捡漏
-
filter()
方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。 注意: **filter()** 不会对空数组进行检测。 注意: **filter()** 不会改变原始数组。
let a = [1, 2, 3, 4, 5];
let b = a.filter(function(num) {
return num >= 3;
})
console.log(a, '原数组');
console.log(b, '筛选后数组');
结果:
[1, 2, 3, 4, 5] "原数组"
[3, 4, 5] "筛选后数组"
-
数组中find和findIndex
**find** 取出满足要求的第一个值
const arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
let a=arr.find(value=>value>2);
console.log(a);
结果:
3
通过数组下标取对应值
const arr1 = [1, 2, 3, 4, 5, 6, 7, 8, 9];
let b = arr1.find((value,index,arr)=>{
return index==4
});
console.log(b);
结果:
5
**findIndex**
取出满足要求的下标;满足条件,返回下标位置、没有满足条件的,返回-1
const ageArr=[
{id:1, age:20},
{id:2, age:21},
{id:3, age:22 },
{id:4, age:23}
];
/*满足条件*/
let a1= ageArr.findIndex((value)=>value.age==21);
console.log(a1);
结果:
1
/*没有满足条件的,返回-1*/
let a2= ageArr.findIndex((value)=>value.age==28);
console.log(a2);
结果:
-1