数组过滤器some、filter、map方法
有时我们需要迭代数组中的元素,过滤出符合条件的元素。本章就给大家介绍一下数组过滤器some、filter、map三种方法:
首先我们定义一个常见的数组,筛选条件是,找出数组中为偶数的项:
let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
const isEven = x => x % 2 === 0;
some方法
some方法会迭代数组中的每个元素,直到函数返回true,如若找不到符合条件的元素则返回false。
let new_status = numbers.some(isEven); // true
filter方法
filter方法返回一个新数组由使函数返回true的元素组成
const evenNumbers = numbers.filter(isEven);
返回数组evenNumbers数组中的元素都是偶数:[2, 4, 6, 8, 10]
map方法
map方法同filter一样是返回新的数组,不同的是返回数组中对每一个元素的判断结果true/false。
const myMap = numbers.map(isEven);
返回新数组myMap为:[false, true, false, true, false, true, false, true, false, true]
map方法是经常会被前端忽略的数组处理方法,真正使用起来还是很方便的。