改变原数组的方法
1.splice() 删除或添加
splice(index,num);//删除 index下标 num删除的个数
let arr=[2,3,4,5]
arr.split(1,1);// arr=[2,4,5]
splice(index,0,arr1,arr2) //添加 index下标从第几个位置开始添加 arr1,arr2添加的数据
let arr = [1,2,3,4]
arr.split(1,0,6,7,8]// arr=[1,2,6,7,8,3,4]
2.sort() 排序
从小到大的排序
let arr=[{id:1,name:'cc'},{id:2,name:'ac'}]
arr.sort((a,b)=>return a.id - b.id)
从大到小
let arr=[{id:1,name:'cc'},{id:2,name:'ac'}]
arr.sort((a,b)=>return b.id - a.id)
3.reverse()) 反转
let arr=[{id:1,name:'cc'},{id:2,name:'ac'}]
arr.reverse()
4.pop 删除
从数组的尾部删除最后一个元素 返回该元素 如果没有返回undefined
let arr=[{id:1,name:'cc'},{id:2,name:'ac'}]
arr.pop() //{id:2,name:'ac'}
5.shift 删除
从数组的头部删除第一个元素 返回该元素 如果没有返回undefined
let arr=[{id:1,name:'cc'},{id:2,name:'ac'}]
arr.shift() //{id:1,name:'cc'}
6.unshift 添加
从数组的头部第一个位置添加一个元素 返回新数组
let arr=[{id:1,name:'cc'},{id:2,name:'ac'}]
arr.unshift({id:3,name:'dc'}) //[{id:3,name:'dc'},{id:1,name:'cc'},{id:2,name:'ac'}]
7.push添加
从数组的尾部第一个位置添加一个元素 返回新数组
let arr=[{id:1,name:'cc'},{id:2,name:'ac'}]
arr.unshift({id:3,name:'dc'}) //[{id:1,name:'cc'},{id:2,name:'ac'},{id:3,name:'dc'}]
forEach() 遍历
如果遍历基本数据类型 不会改变原数组
let arr=[1,2,3,4]
arr.forEach(item=>{
item=item*3
});//arr=[1,2,3,4]
使用arr[index]的形式赋值改变,无论什么就都可以改变了。
let arr=[1,2,3,4]
arr.forEach((item,index,newArr)=>{
newArr[index]=item*3
});//arr=[3,6,9,12]
水平有限难免有纰漏,欢迎纠错