数组

JavaScript数组可以包含任意类型的数组,并通过索引访问每个元素

"use strict";

var arr = [1,2,3,4,5,'a','b','ASD',true];
console.log(arr.length);    // 9

//直接给arr.length赋值可以改变数组长度

var lis = [1,2,3];
console.log(lis.length);    // 3
lis.length = 5;
console.log(lis);           // [ 1, 2, 3, <2 empty items> ]
console.log(lis.length);    // 5


lis.length = 2;
console.log(lis);           // [ 1, 2 ]

 通过索引修改对应的元素:///ps:通过索引赋值,如果超过索引范围同样会改变数组长度。

var str = ['a', 'bc', 'd'];
str[2]=0;
console.log(str); // [ 'a', 'bc', 0 ]

var arr = [1, 2, 3];
arr[5] = 'x';
arr; // arr变为[1, 2, 3, undefined, undefined, 'x']

 indexOf()函数:<类似于set ?>

 var num = [1,2,3,4,'a','v','s'];
console.log(arr.indexOf('a')); //5

 slice() 函数:<切片>

var arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G'];
arr.slice(0, 3); // 从索引0开始,到索引3结束,但不包括索引3: ['A', 'B', 'C']
arr.slice(3); // 从索引3开始到结束: ['D', 'E', 'F', 'G']

 push 和 pop :

push()是向Array的末尾添加若干元素, pop() 是删除最后一个元素:

var arr = [1, 2];
arr.push('A', 'B'); // 返回Array新的长度: 4
arr; // [1, 2, 'A', 'B']
arr.pop(); // pop()返回'B'
arr; // [1, 2, 'A']
arr.pop(); arr.pop(); arr.pop(); // 连续pop 3次
arr; // []
arr.pop(); // 空数组继续pop不会报错,而是返回undefined
arr; // []

shift 和unshift:

unshift()向元素开头添加若干元素,shift()方法是把Array的第一个元素删掉。

var num = [1,2,3];
num.unshift(-1,0);
console.log(num);       // [ -1, 0, 1, 2, 3 ]
num.shift();
console.log(num); // [ 0, 1, 2, 3 ]

sort()函数,排序:

默认按照字典序从小到大排序

用法:arr.sort();

 reverse()函数:元素颠倒:

用法:arr.reverse()

splice()函数:可以任意修改数组,对数组本身进行修改:

var arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G'];
1,2分开执行
1、
// 从索引2开始,删除3个元素,并且添加2个元素 arr.splice(2,3,'!','*'); console.log(arr); // [ 'A', 'B', '!', '*', 'F', 'G' ] 2、
// 只删除2个 arr.splice(1,2); console.log(arr); // [ 'A', 'D', 'E', 'F', 'G' ]

contact()函数,把当前Array和另一个Array连接起来,返回一个新的Array。

实际上,concat()方法可以接收任意个元素和Array,并且自动把Array拆开,然后全部添加到新的Array里:

var arr = ['A', 'B', 'C'];
arr.concat(1, 2, [3, 4]); 
console.log(arr.concat(1, 2, [3, 4]));// ['A', 'B', 'C', 1, 2, 3, 4]

 join()函数,把当前数组的元素用指定符号连接,返回连接后的字符串

var arr = ['A', 'B', 'C', 1, 2, 3];
console.log(arr.join('-'));    //A-B-C-1-2-3

 如果Array的元素不是字符串,将自动转换为字符串后再连接。

多维数组

如果数组的某个元素又是一个Array,则可以形成多维数组,例如:

var arr = [[1, 2, 3], [400, 500, 600], '-'];

 上述Array包含3个元素,其中头两个元素本身也是Array

原文地址:https://www.cnblogs.com/donke/p/10013877.html