创建一个新数组,其元素是原始数组经过回调函数处理后的结果。
用法:
const newArray = array.map(callback(element, index, array) { // 处理逻辑 return transformedElement; });
示例:
const numbers = [1, 2, 3];
const doubledNumbers = numbers.map((num) => num * 2);
console.log(doubledNumbers); // [2, 4, 6]
创建一个新数组,其中包含通过回调函数筛选出来的原始数组元素。
用法:
const newArray = array.filter(callback(element, index, array) { // 返回 true 表示保留该元素,返回 false 表示过滤掉该元素 return condition; });
示例:
const numbers = [1, 2, 3, 4, 5];
const evenNumbers = numbers.filter((num) => num % 2 === 0);
console.log(evenNumbers); // [2, 4]
检查数组中的所有元素是否满足回调函数的条件。
用法:
const result = array.every(callback(element, index, array) { // 返回 true 或 false return condition; });
示例:
const numbers = [2, 4, 6, 8, 10];
const allEven = numbers.every((num) => num % 2 === 0);
console.log(allEven); // true
检查数组中的任意元素是否满足回调函数的条件。
用法:
const result = array.some(callback(element, index, array) { // 返回 true 或 false return condition; });
示例:
const numbers = [1, 2, 3, 4, 5];
const hasEven = numbers.some((num) => num % 2 === 0);
console.log(hasEven); // true
对数组中的所有元素执行一个归约操作,将它们合并为一个值。
用法:
const result = array.reduce(callback(accumulator, element, index, array) { // 处理逻辑并返回累积值 return updatedAccumulator; }, initialValue);
示例:
const numbers = [1, 2, 3, 4, 5];
const sum = numbers.reduce((accumulator, currentValue) => accumulator + currentValue, 0);
console.log(sum); // 15
遍历数组的每个元素,并对每个元素执行回调函数。
用法:
array.forEach(callback(element, index, array) { // 处理逻辑 });
示例:
const numbers = [1, 2, 3];
numbers.forEach((num) => { console.log(num); }); // 1 // 2 // 3
查找数组中满足条件的第一个元素,并返回该元素。
用法:
const result = array.find(callback(element, index, array) { // 返回 true 或 false return condition; });
示例:
const numbers = [1, 2, 3, 4, 5];
const evenNumber = numbers.find((num) => num % 2 === 0);
console.log(evenNumber); // 2
在数组中查找指定元素的索引。
用法:
const index = array.indexOf(element);
const lastIndex = array.lastIndexOf(element);
示例:
const numbers = [1, 2, 3, 4, 5];
console.log(numbers.indexOf(3)); // 2
console.log(numbers.lastIndexOf(3)); // 2
console.log(numbers.indexOf(6)); // -1