常用数组使用大全

2019-12-15

这是一期分享常用数组使用的方法解析。

关于常用数组的方法有如下:for,forEach,find,findIndex,indexOf,map,pop,push,shift,unshift,splice,slice,indludes,

for

let sum=0
for(let i=0;i<10;i++>){
    sum+=i;
}

foreach包含2个参数item和index

let list=[1,2,3,4];
let sum=0;
list.forEach((item,index)=>{
    sum+=item
})

find表示在数组中查找某个值,返回值是匹配上的那一条数据

let list=[{name:'a',age:1},{name:'b',age:2},{name:'c',age:3}]
let data=list.find((item,index)=>{
    return item.age==2
})

//返回的是{name:'b',age:2}这个对象

findIndexfind类似,返回值是匹配上的那一条数据的index值

let list=[{name:'a',age:1},{name:'b',age:2},{name:'c',age:3}]
let index=list.findIndex((item,index)=>{
    return item.age==2
})
//返回的是{name:'b',age:2}这个对象所在的index,是1

indexOffindOf类似,都是查找位置

indexOf(item,start),start为初始位置,默认为0

let list=['a','b','c','d']
let index=list.indexOf('a');
//返回的是所在的index,是0

map,对某项进行操作,并返回对应的数组,不会更改原数组

map((item,index,arr)=>{}),arr表示原数组

let list=[{name:'a',age:1},{name:'b',age:2},{name:'c',age:3}]
let array = list.map((item,index,arr)=>{
    return item.age*10
})
//理想状态是[{name:'a',age:10},{name:'b',age:20},{name:'c',age:30}]
//实际是[10,20,30]

pop删除数组的项,从数组的最后一项开始删除

let list=[{name:'a',age:1},{name:'b',age:2},{name:'c',age:3}]
let array = list.pop();
//返回[{name:'a',age:1},{name:'b',age:2}]

push新增数据的项,从数组最后一项开始增加

push(item1,item2),可以在数组末尾增加多个item

let list=[{name:'a',age:1},{name:'b',age:2},{name:'c',age:3}]
let array = list.push({name:'d',age:4});
//返回[{name:'a',age:1},{name:'b',age:2},{name:'c',age:3},{name:'d',age:4}]

shift是把数组的第一项移除

let list=[{name:'a',age:1},{name:'b',age:2},{name:'c',age:3}]
let array = list.shift()
//返回[{name:'b',age:2},{name:'c',age:3}]

unshift是向数组的开头新增对象,可增加多个item

let list=[{name:'a',age:1},{name:'b',age:2},{name:'c',age:3}]
let array = list.unshift({name:'a0',age:0})
//返回[{name:'a0',age:0},{name:'a',age:1},{name:'b',age:2},{name:'c',age:3}]

splice功能强大,可增,可删,可编辑。但会改变原数组

splice(index,howmany,item1,item2);index表示增加/删除的位置,howmany表示要删除的数量,为0表示不删除,item1,item2表示要新增的数据

增:
let arr=arr.splice(1,0,item1);
//从数组的第2个位置开始增加新数据
删:
let arr=arr.splice(1,1);
//从数组的第2个位置删除1个数据
编辑:
let arr=arr.splice(1,1,item1);
//将数组中的第二个位置替换成item1,也可以理解为将第二个位置的数据删除,将后面的数据补充上

slice从原数组中截取一段,不改变原数组

slice(start,end);
//从start开始,到end结束,含start,不含end

let arr1=arr.slice(1,3);
//将arr截取位置1,位置2的数据

indludes表示一个数组是否包含某个值,返回true/false

let arr=[1,2,3];
let index=arr.includes(1);
//true
posted @ 2019-12-25 10:24  行侠仗义的小龙女  阅读(429)  评论(2编辑  收藏  举报