1.map:map
方法会对数组中的每个元素调用指定的函数,并返回一个新数组,新数组中的元素为原始数组元素调用函数的结果。适用于需要修改每个元素并生成新数组的情况。
const numbers = [1, 2, 3, 4];
const doubledNumbers = numbers.map(num => num * 2);
console.log(doubledNumbers); // 输出 [2, 4, 6, 8]
2.filter:filter
方法会创建一个新数组,其中包含通过指定函数测试的所有元素。适用于根据条件筛选数组元素的情况。
const numbers = [1, 2, 3, 4];
const evenNumbers = numbers.filter(num => num % 2 === 0);
console.log(evenNumbers); // 输出 [2, 4]
3.reduce:reduce
方法对数组中的每个元素执行一个指定的函数,将其结果汇总为单个值。适用于需要对数组元素进行累加或聚合操作的情况。
const numbers = [1, 2, 3, 4];
const sum = numbers.reduce((acc, curr) => acc + curr, 0);
console.log(sum); // 输出 10
4.some 和 every:some
方法用于检查数组中是否至少有一个元素满足条件,而 every
方法用于检查数组中的所有元素是否都满足条件。返回布尔值。
const numbers = [1, 2, 3, 4];
const hasEvenNumber = numbers.some(num => num % 2 === 0);
console.log(hasEvenNumber); // 输出 true
const allPositive = numbers.every(num => num > 0);
console.log(allPositive); // 输出 true
5.find 和 findIndex:find
方法用于查找数组中第一个满足条件的元素,并返回该元素,而 findIndex
则返回该元素的索引。
const numbers = [1, 2, 3, 4];
const evenNumber = numbers.find(num => num % 2 === 0);
console.log(evenNumber); // 输出 2
const indexOfEvenNumber = numbers.findIndex(num => num % 2 === 0);
console.log(indexOfEvenNumber); // 输出 1
以上就是几种比较常见的数组循环方法