常见 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