给你一个数组:
let arr=[{ id:1, msg:"张三" },{ id:2, msg:"李四" }]
1.forEach()
forEach用于循环遍历数组
forEach有3个参数 第一个参数示意数组中每一项 第二个参数示意数组中每一项的下标 第三个参数示意正在遍历的这个数组 arr.forEach((item,index,a)=>{ console.log(item,'数组每项',index,'正在遍历的数组的下标',a,'正在遍历的这个数组'); })
2.filter()
filter用于过滤
问:查找这个数组中id等于1的数据 let a=arr.filter(item=>{ return item.id===1 ) console.log(a,'就是你想要的数据')
3.push()
push办法用于给数组中增加数据
let obj={ id:3, msg:"马武" } let cc=arr.push(obj)console.log(arr,'增加胜利后的数据');
4.splice
splice办法用于删除
arr.splice(0,1)
第一个参数不碍事数组中每一项下标,第二个参数是删除几个
console.log(arr,'删除后的新数组');
5.some()
some办法用于检测数组中的元素是否满足条件,满足返回true,不满足返回false
let ac=arr.some(item=>item.id<3) console.log(ac,'返回的是true');
let a=arr.some(item=>item.id<0) console.log(a,'返回的是false');
6.findIndex()
findIndex办法用于查找合乎元素的下表
let index=arr.findIndex(item=>item.id===2) console.log(index,'符合条件数据的下标');
7.every()
every办法用于检测数组元素是否都否和条件,然而如果有一项不否合就返回false,残余的不再检测,然而如果所有的元素都合乎则返回true
例子 :let aa=arr.every(item=>item.id===1 ) console.log(aa,'返回false');
例子 let arr=[{id:"1"},{id:"1"}] let aa=arr.every(item=>item.id===1 ) console.log(aa,'返回true');
8.find ()
find 办法用于返回数组中满足第一个元素的值,如果没有返回undefined
let fin=arr.find(item=>item.id===1) console.log(fin,'返回的数据'); 否: 返回undefined因为数组中没有id等于3的 arr.find(item=>item.id===3)
9.indexOf()
indexOf办法判断数组中是否存在某个值,如果存在返回数组的下标,不存在返回-1
let str=['a','b','c'] let index=str.indexOf('c') console.log(index,'返回元素下标'); let a=str.indexOf('d') console.log(a,'返回-1')
10.concat()
concat数组合并
let aa=['张三0','李四1'] let bb=['麻五2','翠花3'] let cc= aa.concat(bb) console.log(cc);
11.sort()
sort数组的排序
let vv=[5,4,6,8,2,10,9] let so= vv.sort((a,b)=>a-b) console.log(so,'正序'); let so1= vv.sort((a,b)=>b-a) console.log(so1,'倒序');
12.reverse()
reverse办法用于颠倒数组中的元素
let aa=[5,4,3,2,1]let dao=aa.reverse()console.log(dao);
13.join()
join用于数组转成字符串,而后给他规定链接字符,默认是逗号,原数组不会被扭转
let aa=[5,4,3,2,1] console.log(aa.join('-'),'数组中每一项变为字符串并且都用-隔开'); console.log(typeof(aa.join('')),'转换为字符串');
14.includes()
includes办法用于确定一个数组是否蕴含一个特定的,值依据状况,能够搜寻数组中的元素或索引,它返回一个布尔值,找到返回true,没找到返回false
let aa=[1,2,3,4,5] console.log(aa.includes(2,3)) //2示意要查找的参数,3示意从索引 // 如果第二个参数是正数则从开端开始,-1示意5以此类推..... console.log(aa.includes(3),'返回true'); console.log(aa.includes(6),'返回false'); // 从索引2开始 console.log(aa.includes(3,2),'返回true'); // 从索引3开始 console.log(aa.includes(3,3),'返回false') // 正数 console.log(aa.includes(3,-1),'返回false'); console.log(aa.includes(3,-3,'返回true'));
15.map()
map办法用于返回一个新数组 !!!留神不会对空数组进行检测,不会扭转原始数组
let arr=[ { id:1, msg:"麻五" }, { id:2, msg:"李四" }] let c= arr.map(item=>{ return item.id }) console.log(c,'返回一个新数组');
16.shift()
shift从数组删除第一个元素,并返回该元素的值(删除的元素)
如果数组为空返回undefined
let arr=[ { id:1, msg:"麻五" }, { id:2, msg:"李四" } ]// 移除第一个元素 let removedElement = arr.shift(); console.log(removedElement); // 输入: { id:1, msg:"麻五" }, // 查看批改后的数组 console.log(arr); // 输入: { id:2, msg:"李四" }
17.pop()
pop用于删除并返回数组最初一个元素,如果数组为空返回undefined
let aa=[1,2,3,4,5] // 移出最初一个元素 let c=aa.pop() console.log(c);//输入5 // 查看原数组 console.log(aa);
18.unshift()
unshift 办法数组头部增加元素,返回数组的新长度,!!!留神不是返回数组
let aa=[1,2,3,4,5] let b=7 console.log(aa.unshift(b));//返回数组的新长度 console.log(aa,'新数组');
19.slice()
slice办法返回一个新数组他是原数组的一部分(深拷贝),从start开始到end完结原数组不扭转
let arr=['a','b','c','d'] // 从索引1开始到索引3完结(不包含3) let a=arr.slice(1,3) console.log(a);//输入['b','c'] // 从索引2开始到开端 let b=arr.slice(2) console.log(b);//输入['c','d'] // 应用正数 let d=arr.slice(-3,-1) console.log(d);//输入['b','c']
20.of()
of办法用于将一组值转换为数组
let arr1=Array.of(1) //[1] let arr2=Array.of(undefined) // undefined let arr3=Array.of() //[]