Array系统内置对象



一组数据的集合,



有个length属性代表数组的长度,(可以改变)



以数字为索引,索引从0开始到length-1结束。



操作方法:

1、给数组尾部添加数据

数组.push(元素1,元素2…)

参数:要添加的数据,可以是一个也可以多个

返回值:返回添加数组的长度,原数组改变,变成添加后的数组。 

2、把数组的最后一项数据删除pop()

数组.pop()

参数:无参;

返回值: 删除的那个数据,原数组改变,变成删除后的数组。

3、给数组的前面添加数据。unshift()

数组.unshift(元素1,元素2。。。)

参数:要添加的数据。

返回值:添加后的新数组的长度,原数组改变,变成添加后的数组

4、删除数组的第一项 shift()

数组.shift()

参数:无参

返回:返回被删除的数据,原数组改变,变成删除后的数据。

小节:给数组首尾添加数据unshift(),push()、

删除数组的第一项shift(),最后一项 pop(); 

5、join()

作用:把数组变成字符串。

语法:数组.join(separator)

参数:separator是一个连接符,把数组连接成一个字符串。

无参数时默认逗号分隔

参数为空字符时那么数组的每一项被直接连接

返回:返回数组转换成的字符串,原数组不改变

6、reverse()

作用:颠倒数组

语法:数组.reverse()

返回:颠倒后的数组,原数组改变,变成颠倒后的数组 

8、concat()

作用:连接数组,组成一个新的数组。

语法:数组.concat(value1,value2…)

参数:需要与数组合并的元素,可以是数组,数组名,非数组。

若无参数时是克隆一个新的数组

返回值:合并后的新数组,原数组不改变。

9、slice()

作用:截取数组

语法:数组.slice(m,n)

参数:是截取位置,从索引m处,截取到n处不包含n。

若只有一个参数,那么就是从参数位置开始到数组最后。

若无参数时返回原来的数组(克隆)

返回值:返回截取到的数组,原数组不改变

10、splice()

作用:用新的元素替换数组旧的元素(以此来修改数组的内容)

语法:splice(start,deleteCount,item)

参数:在索引start位置,删除deleteCount个元素后,把item放进来。

如果参数是一个时,代表载取数组,从参数位置开始到最后。

如果是两个参数时,代表从第一个参数位置开始,截取的个数为 第二个参数。

如果三个参数,从第一个参数位置开始,删除第二个参数个数后,把第三个以及第三个参数后边的数据加到数组中(替换数组元素)

返回值:返回删除的数据,原数组改变,变成删除后剩下的内容。

遍历数组

forEach

作用:遍历数组

语法:数组.forEach(function(currentValue,index,array){

//每次循环完都会执行这里的代码

})

参数:forEach里放的参数是一个函数,

函数的参数

Value //当前数组中的某个数据

index//当前数据的索引

array//数组本身 


var array=[‘lisa’,’liu’,’li’,’zhang’];
array.forEach(function(cc,index,array){
console.log(cc,index,array)
 
})

数组排序

sort()

作用:对数组进行排序

语法:数组.sort(compareFunction)

参数:用来指定按某种顺序对数组进行排序

若无参数 按assci码值进行排序

函数里有两个参数a,b

return a-b 从小到大的顺序去排列小于0 从大到小

return b-a 从大到小的顺序去排列

返回:排序后的数组,原数组改变,变成排序后的数组