push数组
向数组末尾增长项code
返回数组新长度排序
直接改变原数组索引
其余实现方法:ary[ary.length]=1字符串
popit
删除数组最后一项io
返回被删除项console
直接改变原数组function
其余实现方法:ary.length--遍历
shift
删除数组第一项
返回被删除的那一项
直接改变原数组
unshift
向数组开头增长项
返回数组新长度
原数组改变
splice
splice(n,m)从索引n开始,删除m个元素
splice(n)从索引n开始,删除到数组末尾
ary.splice(ary.length-1,0)==ary.pop()
splice(n,m,x)从索引n开始删除m个,用x替换删除项
splice(n,0,x)从索引n开始,删除0个(不删除),把x增长到n的前面
ary.splice(ary.length,0,x)==ary.push(x)
slice
slice(n,m)从索引n开始截取到m-1处
slice(0) 至关于赋值数组
concat 拼接
toString 转化为字符串
join(',') 按照固定符号把数组拆分
reverse 倒序数组
sort 排序数组(10之内)
sort(function(a,b){ return a-b })有小到大排序
sort(function(a,b){ return b-a })有大到小排序
forEach 遍历数组
var ary = [1, 2, 3]; ary.forEach( function ( item , index ) {} )
注意:还须要处理低版本IE的朋友请忽略如下方法
增 push
arr.push({name:5}); console.log(arr);//[ { name: 1 }, { name: 2 }, { name: 3 }, { name: 4 }, { name: 5 } ]
直接改变原数组
删(过滤) filter
var res=arr.filter(function (item, index) { return item.name!==1//过滤掉name为1的那一项 }); console.log(arr)//[ { name: 1 }, { name: 2 }, { name: 3 }, { name: 4 } ] console.log(res)//[ { name: 2 }, { name: 3 }, { name: 4 } ]
返回的新数组才是过滤好的结果,原数组不变
改 map
var obj={name:100}; var res=arr.map(function (item, index) { if(item.name===1){ return obj } return item; }); console.log(arr);//[ { name: 1 }, { name: 2 }, { name: 3 }, { name: 4 } ] console.log(res)//[ { name: 100 }, { name: 2 }, { name: 3 }, { name: 4 } ]
返回的新数组才是改变后的结果,原数组不变
查 find
var res=arr.find(function (item, index) { return item.name==1 }) console.log(arr)//[ { name: 1 }, { name: 2 }, { name: 3 }, { name: 4 } ] console.log(res)//{ name: 1 }
返回结果才是要查找的项,原数组不变