数组中可以包含任何数据类型的元素
var arr = [10,8,'hello',null,true,3.1415926];
//取得array的长度
arr.length;//6
//修改元素值
arr[1]=9;//arr = [10,9,'hello',null,true,3.1415926]
//越界访问
arr[6]=666;//arr = [10,8,'hello',null,true,3.1415926,666]
arr[8]=888;//arr = [10,8,'hello',null,true,3.1415926,666,undefined,888]
//截取部分元素
arr.slice(0,3);//从索引0开始,删除3个元素 [10,8,'hello']
arr.slice(3);//从索引3开始,直到结束【null,true,3.1415926,666,undefined,888】
//slice()无参数时,从头到尾截取所有元素
var arrCopy = arr.slice();
//向数组头部添加元素unshift()
arr.unshift('1');//arr = ['1',10,8,'hello',null,true,3.1415926,666,undefined,888]
//删除数组头部第一个元素shift()
arr.shift();//arr = [10,8,'hello',null,true,3.1415926,666,undefined,888]
//向数组尾部添加元素push()
arr.push('data');
//删除数组尾部的最后一个元素
arr.pop();
//数组排序--按照字符编码的顺序进行排序
arr.sort();
//元素反转
arr.reverse();
//删除和添加元素
var arr1 = ['Microsoft', 'Apple', 'Yahoo', 'AOL', 'Excite', 'Oracle'];
// 从索引2开始删除3个元素,然后再添加两个元素:
arr1.splice(2, 3, 'Google', 'Facebook'); // 返回删除的元素 ['Yahoo', 'AOL', 'Excite']
arr1; // ['Microsoft', 'Apple', 'Google', 'Facebook', 'Oracle']
// 只删除,不添加:
arr1.splice(2, 2); // ['Google', 'Facebook']
arr1; // ['Microsoft', 'Apple', 'Oracle']
// 只添加,不删除:
arr1.splice(2, 0, 'Google', 'Facebook'); // 返回[],因为没有删除任何元素
arr1; // ['Microsoft', 'Apple', 'Google', 'Facebook', 'Oracle']
连接两个数组,concat()--并没有修改当前数组,而是返回了一个新的数组。
var arr = ['A', 'B', 'C'];
var added = arr.concat([1, 2, 3]);
added; // ['A', 'B', 'C', 1, 2, 3]
arr; // ['A', 'B', 'C']
//实际上,该方法可以接收任意个元素和数组,并且自动把数组拆开,然后全部添加到新的数组中。
var arr = ['A', 'B', 'C'];
arr.concat(1, 2, [3, 4]); // ['A', 'B', 'C', 1, 2, 3, 4]
将当前数组中的每个元素都用指定的字符串连接起来,然后返回连接后的字符串--join().同时,若元素不是字符串,则会自动转化为字符串然后连接起来。
var arr=['a','b','c',1,2,3];
arr.join('-');// 'A-B-C-1-2-3'