[ Web Proxy ]
URL:
Viewing: https://ja.javascript.info/array [Back]  [Original]

:
Light themeDark theme
DanskEnglishEspaolFranaisIndonesiaItalianoTrkeOzbek

123 HTML

Array

2:

let arr = new Array();
let arr = [];

2:

let fruits = ["Apple", "Orange", "Plum"];

:

let fruits = ["Apple", "Orange", "Plum"];

alert( fruits[0] ); // Apple
alert( fruits[1] ); // Orange
alert( fruits[2] ); // Plum

:

fruits[2] = 'Pear'; // now ["Apple", "Orange", "Pear"]

:

fruits[3] = 'Lemon'; // now ["Apple", "Orange", "Pear", "Lemon"]

length :

let fruits = ["Apple", "Orange", "Plum"];

alert( fruits.length ); // 3

alert

let fruits = ["Apple", "Orange", "Plum"];

alert( fruits ); // Apple,Orange,Plum

:

// 
let arr = [ 'Apple', { name: 'John' }, true, function() { alert('hello'); } ];

//  1 
alert( arr[1].name ); // John

//  3 
arr[3](); // hello

:

let fruits = [
  "Apple",
  "Orange",
  "Plum",
];

pop/push, shift/unshift

(queue) 2:

  • push
  • shift 21
[]

(stack)

2

  • push .
  • pop

[]

LIFOLast-In-First-Out FIFOFirst-In-First-Out

JavaScript/

/(deque)

:

pop

:

let fruits = ["Apple", "Orange", "Pear"];

alert( fruits.pop() ); // "Pear"  alert 

alert( fruits ); // Apple, Orange
push

:

let fruits = ["Apple", "Orange"];

fruits.push("Pear");

alert( fruits ); // Apple, Orange, Pear

fruits.push(...) fruits[fruits.length] = ...

:

shift

:

let fruits = ["Apple", "Orange", "Pear"];

alert( fruits.shift() ); // Apple  alert 

alert( fruits ); // Orange, Pear
unshift

:

let fruits = ["Orange", "Pear"];

fruits.unshift('Apple');

alert( fruits ); // Apple, Orange, Pear

push unshift :

let fruits = ["Apple"];

fruits.push("Orange", "Peach");
fruits.unshift("Pineapple", "Lemon");

// ["Pineapple", "Lemon", "Apple", "Orange", "Peach"]
alert( fruits );

arr[0]

length

JavaScript7

:

let fruits = ["Banana"]

let arr = fruits; //  (2)

alert( arr === fruits ); // true

arr.push("Pear"); // 

alert( fruits ); // Banana, Pear - 2 

:

let fruits = []; // 

fruits[99999] = 5; //  length 

fruits.age = 25; // 

:

  • arr.test = 5
  • : arr[0] arr[1000] ()
  • : arr[1000], arr[999]

JavaScript {}

push/pop shift/unshift

[]

:

fruits.shift(); // 1

0

shift 3:

  1. 0
  2. 1 02 1
  3. length
[]

unshift :

push/pop pop length

pop :

fruits.pop(); // 1
[]

pop

push

1 for :

let arr = ["Apple", "Orange", "Pear"];

for (let i = 0; i < arr.length; i++) {
  alert( arr[i] );
}

for..of :

let fruits = ["Apple", "Orange", "Plum"];

// 
for (let fruit of fruits) {
  alert( fruit );
}

for..of

for..in :

let arr = ["Apple", "Orange", "Pear"];

for (let key in arr) {
  alert( arr[key] ); // Apple, Orange, Pear
}

:

  1. for..in

    length for..in

  2. for..in 10100

for..in

length

length 1

1length:

let fruits = [];
fruits[123] = "Apple";

alert( fruits.length ); // 124

length

:

let arr = [1, 2, 3, 4, 5];

arr.length = 2; // 2
alert( arr ); // [1, 2]

arr.length = 5; // length 
alert( arr[3] ); // undefined: 

arr.length = 0;

new Array()

:

let arr = new Array("Apple", "Pear", "etc");

[]

new Array

:

let arr = new Array(2); // [2] 

alert( arr[0] ); // undefined! .

alert( arr.length ); // length  2 

:

let matrix = [
  [1, 2, 3],
  [4, 5, 6],
  [7, 8, 9]
];

alert( matrix[1][1] ); // 

toString

toString

:

let arr = [1, 2, 3];

alert( arr ); // 1,2,3
alert( String(arr) === '1,2,3' ); // true

:

alert( [] + 1 ); // "1"
alert( [1] + 1 ); // "11"
alert( [1,2] + 1 ); // "1,21"

Symbol.toPrimitive valueOf toString [] [1] "1" [1,2] "1,2"

"+" :

alert( "" + 1 ); // "1"
alert( "1" + 1 ); // "11"
alert( "1,2" + 1 ); // "1,21"

==

JavaScript ==

:

  • ==
  • ==
  • == null undefined

===

==

:

alert( [] == [] ); // false
alert( [0] == [0] ); // false

==

:

alert( 0 == [] ); // true

alert('0' == [] ); // false

[] ''

// []  '' 
alert( 0 == '' ); // true, ''  0 

alert('0' == '' ); // false, 

: ==

  • :

    //  ()
    let arr = [item1, item2...];
    
    // new Array ()
    let arr = new Array(item1, item2...);

    new Array(number)

  • length 1

  • length

(deque):

  • push(...items) items
  • pop()
  • shift()
  • unshift(...items)

:

  • for (let i=0; i<arr.length; i++)
  • for (let item of arr)
  • for (let i in arr)

== >, <

for..of

: 3

let fruits = ["Apples", "Pear", "Orange"];

//  "" 
let shoppingCart = fruits;
shoppingCart.push("Banana");

// fruits ?
alert( fruits.length ); // ?

4 :

let fruits = ["Apples", "Pear", "Orange"];

let shoppingCart = fruits;

shoppingCart.push("Banana");

alert( fruits.length ); // 4

shoppingCart fruits

: 5

5

  1. Jazz Blues styles
  2. Rock-n-Roll
  3. Classics
  4. Rap Reggae

:

Jazz, Blues
Jazz, Bues, Rock-n-Roll
Jazz, Classics, Rock-n-Roll
Classics, Rock-n-Roll
Rap, Reggae, Classics, Rock-n-Roll
let styles = ["Jazz", "Blues"];
styles.push("Rock-n-Roll");
styles[Math.floor((styles.length - 1) / 2)] = "Classics";
alert( styles.shift() );
styles.unshift("Rap", "Reggie");

: 5

let arr = ["a", "b"];

arr.push(function() {
  alert( this );
})

arr[2](); // ?

arr[2]() obj[method]() arr obj 2 method

arr[2] : arr[2] function() { alert( this ); } push ) arr this arr :

let arr = ["a", "b"];

arr.push(function() {
  alert( this );
})

arr[2](); // "a","b",function

3: 2

: 4

sumInput() :

  • prompt

P.S. 0

prompt value value = +value

function sumInput() {

  let numbers = [];

  while (true) {

    let value = prompt("A number please?", 0);

    // should we cancel?
    if (value === "" || value === null || !isFinite(value)) break;

    numbers.push(+value);
  }

  let sum = 0;
  for (let number of numbers) {
    sum += number;
  }
  return sum;
}

alert( sumInput() );

: 2

e.g. arr = [1, -2, 3, 4, -9, 6].

: arr

getMaxSubSum(arr)

:

getMaxSubSum([-1, 2, 3, -9]) = 5 ()
getMaxSubSum([2, -1, 2, 3, -9]) = 6
getMaxSubSum([-1, 2, 3, -9, 11]) = 11
getMaxSubSum([-2, -1, 1, 2]) = 3
getMaxSubSum([100, -9, 2, -3, 5]) = 100
getMaxSubSum([1, 2, 3]) = 6 ()

():

getMaxSubSum([-1, -2, -3]) = 0

: O(n2) O(n)

[-1, 2, 3, -9, 11] :

// -1 :
-1
-1 + 2
-1 + 2 + 3
-1 + 2 + 3 + (-9)
-1 + 2 + 3 + (-9) + 11

// 2 :
2
2 + 3
2 + 3 + (-9)
2 + 3 + (-9) + 11

// 3 :
3
3 + (-9)
3 + (-9) + 11

// -9 
-9
-9 + 11

// -11 
-11

:

function getMaxSubSum(arr) {
  let maxSum = 0; // 

  for (let i = 0; i < arr.length; i++) {
    let sumFixedStart = 0;
    for (let j = i; j < arr.length; j++) {
      sumFixedStart += arr[j];
      maxSum = Math.max(maxSum, sumFixedStart);
    }
  }

  return maxSum;
}

alert( getMaxSubSum([-1, 2, 3, -9]) ); // 5
alert( getMaxSubSum([-1, 2, 3, -9, 11]) ); // 11
alert( getMaxSubSum([-2, -1, 1, 2]) ); // 3
alert( getMaxSubSum([1, 2, 3]) ); // 6
alert( getMaxSubSum([100, -9, 2, -3, 5]) ); // 100

O(n2) 24

(1000, 10000 )

s s s=0 s

:

function getMaxSubSum(arr) {
  let maxSum = 0;
  let partialSum = 0;

  for (let item of arr) { // for each item of arr
    partialSum += item; // add it to partialSum
    maxSum = Math.max(maxSum, partialSum); // remember the maximum
    if (partialSum < 0) partialSum = 0; // zero if negative
  }

  return maxSum;
}

alert( getMaxSubSum([-1, 2, 3, -9]) ); // 5
alert( getMaxSubSum([-1, 2, 3, -9, 11]) ); // 11
alert( getMaxSubSum([-2, -1, 1, 2]) ); // 3
alert( getMaxSubSum([100, -9, 2, -3, 5]) ); // 100
alert( getMaxSubSum([1, 2, 3]) ); // 6
alert( getMaxSubSum([-1, -2, -3]) ); // 0

1 O(n)

: Maximum subarray problem.

function getMaxSubSum(arr) {
  let maxSum = 0;
  let partialSum = 0;

  for (let item of arr) {
    partialSum += item;
    maxSum = Math.max(maxSum, partialSum);
    if (partialSum < 0) partialSum = 0;
  }
  return maxSum;
}


Web Proxy Viewer  |  New URL  |  Original Page