常見 JavaScript 手冊/資料型別 - 陣列
外觀
建立陣列最好使用列表字面量,因為它是最流行且簡單的語法
a = []; //Empty list
b = [1,2,3,4,5]; //List with 5 elements
因此,我們有一個包含五個數字的陣列 'b' 和一個空陣列 'a'。
a[0] = b[2]; //1
delete b[2]; //2
b[3] = 6; //3
- 從陣列 b - [1,2,3,4,5] 中獲取索引為 2 的元素(陣列中的編號從 0 開始)。現在陣列 a = [2]
- 我們從陣列 b 中刪除索引為 2 的元素。現在陣列 b = [0,1,undefined,3,4]。
- 我們更改陣列 b 中索引為 3 的元素的值。現在陣列 b = [0,1,undefined,6,4]。
Array.slice(start,end) - 返回一個數組,包含Array中從start索引到end索引(不包括索引為end的元素)的元素。
a = [0,1,2,3,4,5,6,7];
b = a.slice(2,5); //2,3,4
如果start或end是負數,則start或end的索引等於(陣列長度 + start或end)。
a = [0,1,2,3,4,5,6,7];
b = a.slice(2,-2); //2,3,4,5 because length = 8 and 8 + (-2) = 6
Array.splice(start,number,elem...) - 返回一個包含從Array中start索引開始的number個元素的切片,並將這些元素從Array中刪除,並用elem替換它們。
a = [0,1,2,3,4,5,6,7];
b = a.splice(2,3,0,1,0);
print(b); // 2,3,4
print(a); // 0,1,0,1,0,5,6,7
您可以使用任何陣列作為棧或佇列,為此有四個函式。
| 名稱 | 操作 |
|---|---|
| Array.pop() | 刪除並返回Array的最後一個元素 |
| Array.push(elem...) | 將elem插入Array的末尾 |
| Array.shift() | 刪除並返回Array的第一個元素 |
| Array.unshift(elem...) | 將elem插入Array的開頭 |
例如
Foo = [1,2,3,4,5];
Bar = Foo.pop(); //Bar = 5 , Foo = [1,2,3,4]
Foo.unshift(Bar); // Foo = [5,1,2,3,4]
還有 Array.sort([predicate]) - 如果沒有定義 predicate,則按字典順序對Array中的元素進行排序;否則,按函式predicate的結果對Array中的元素進行排序,該函式獲取兩個引數,如果第一個引數小於第二個引數則返回-1,如果第二個引數小於第一個引數則返回1,如果引數相等則返回0。
Array.reverse() - 反轉Array中的元素。
arr = [5,3,1,4,2];
arr.sort();
print(arr); //1,2,3,4,5
arr.reverse();
print(arr); //5,4,3,2,1
Array.concat(elem1...) - 返回一個包含Array和elem的元素的陣列。如果elem[n]是陣列,則將elem[n]中的所有元素新增到返回的陣列中。
Array.join([separator]) - 返回一個字串,其中包含所有元素,並在每個元素之前新增一個分隔符。如果未定義分隔符,則分隔符 = ","。
arr1 = [0,1,2,3,4]
arr2 = [5,6,7,8,9]
elem = 10;
arr = arr1.concat(arr2,elem); //0,1,2,3,4,5,6,7,8,9,10
str = arr.join(';'); //0;1;2;3;4;5;6;7;8;9;10
print(str);
Array.length - Array中的元素數量
arr = [0,1,2,3,4,5]
print(arr.length); // 6