数组方法 filter 和 some
时间: 2023-05-09 08:03:31 浏览: 101
es6 filter() 数组过滤方法总结
数组方法 filter 和 some 都是用来对数组进行筛选的。
filter 方法会创建一个新的数组,用于存储原始数组中满足条件的元素。它的使用方法是传入一个回调函数作为参数,这个回调函数会被用于判断数组中的每一个元素是否符合条件。如果符合条件,则将该元素添加到新数组中。最后该方法返回这个新数组。
例如,我们有一个数组 [1, 2, 3, 4, 5],我们要筛选出其中所有的偶数,可以使用 filter 方法:
```
const arr = [1, 2, 3, 4, 5];
const filteredArr = arr.filter(item => item % 2 === 0);
console.log(filteredArr); // [2, 4]
```
some 方法则是用来判断数组中是否存在满足条件的元素。它的使用方法也是传入一个回调函数作为参数,这个回调函数同样会被用于判断数组中的每一个元素是否符合条件。只要有一个符合条件的元素,该方法就会返回 true,否则返回 false。
例如,我们有一个数组 [1, 3, 5, 7, 8],我们要判断其中是否有偶数,可以使用 some 方法:
```
const arr = [1, 3, 5, 7, 8];
const hasEvenNumber = arr.some(item => item % 2 === 0);
console.log(hasEvenNumber); // true
```
需要注意的是,filter 和 some 方法都不会改变原始数组,它们会返回一个新的数组或一个布尔值。同时,这两个方法的回调函数都可以传入三个参数:当前元素、当前元素的索引、原始数组本身。这些参数可以在一些特殊的使用场景中发挥作用。
阅读全文