一、ECMAScript中的Array数组:
1.创建数组的基本方式:
1、使用Array构造函数 — 语法:new Array() — 小括号说明预先知道数组要保存的量或者是向其中传递项。
2、使用数组字面量表示法 — 由一对包含数组项的方括号【】表示,多个数组项之间用逗号,隔开。
二、数组元素的读写:
1、和前面提到的arguments几乎一样,同样使用方括号【】并提供相应的索引。
2、索引是从0开始的正整数。
三、数组的长度:
1.array.length
2.获取数组array的长度
3.返回一个number值
4.通过设置length可以从数组的末端移除项或向数组中添加新项 — 一般不建议这样使用
四、数组的栈方法:
1.push()
arrayObject.push(new1,new2,...,) --- 把他的参数顺序添加到arrayObject的尾部,并返回新的数组长度。
2.unshift()
arrayObject.unshift(new1,new2,...,) --- 把他的参数顺序添加到arrayObject的开头,并返回新的数组长度。
3.pop()
arrayObject.pop --- 删除arrayObject 的最后一个元素并返回被删除的那个元素 。
4.unshift()
arrayObject.unshift --- 删除arrayObject 的第一个元素并返回被删除的那个元素 。
5.join()
arrayObject.join(separator) --- 用于把数组中的所有元素放入一个字符串并返回的是字符串。
6.reverse()
arrayObject.reverse() --- 用于颠倒数组中元素的顺序并返回一个数组。
7.sort()
arrayObject.(sortby) --- 用于对数组的元素进行排序并返回一个数组。
说明:1、即使数组中的每一项都是数值,sort()方法比较的也是字符串
2、sort()方法可以接收一个比较函数作为参数
3、举个栗子:var arr = [1,3,99,68 ];
arr.sort(function( a, b ){ return a < b});
console.log(arr);
8.concat()
arrayObject. concat(arrayX,arrayx...) --- 用于连接两个或多个数组并且返回一个数组。
举个栗子: var arr1 = ["a","b","c"],
arr2 = ["d","e",2,3],
arr3 = [];
arr3 = arr1.concat(arr2);
console.log(arr3);
9.slice()
arrayObject.slice(start,end) --- 从已有的数组中返回选定的元素
说明:1.start(必要)规定从何从还是选取,如果是负数,用数组长度减去start值
2.end(可选)规定从何处结束选取,是数组片断结束处的数组下标
10.splice()
1.arrayObject.splice(index ,count) --- 删除从index处开始的零个或者多个元素,返回含有被删除的元素的数组。PS:count是要删除的数目量,如果是0则不会删除,如果不设置,则删除从index开始的所有值。
2.arrayObject.splice(index ,0,item1,...,itemx) --- 在指定位置插入值,index:起始位置,0:要删除的项数。
3.arrayObject.splice(index ,count,item1,....,itemx) --- 在指定位置插入值,且同时删除任意数量的项。
11.indexOf()
arrayObject.indexOf(searchvalue, starIndex) --- 从数组的开头(位置0)开始向后查找
参数:searchvalue:必需,要查找的项
starIndex:可选,在哪里开始查找
PS:数组的位置方法是ECMAScript5为了数组实例新增的,所以支持的浏览器只有:
IE9+ 、 Firefox2+ 、 Safari3+ 、 Opera9.5 、 Chrome。
12.lastIndexof()
和上面的同理,只不过是从最后一个开始查找。