js方法实现
使用 Array.prototype.map() 方法
通过遍历数组并对每个元素应用转换函数,生成新数组。适用于需要一对一映射的场景。
const originalArray = [1, 2, 3];
const newArray = originalArray.map(item => item * 2);
// 结果: [2, 4, 6]
使用 Array.prototype.filter() 方法
筛选数组中符合条件的元素,返回新数组。适用于需要基于条件过滤数据的场景。
const numbers = [1, 2, 3, 4];
const evenNumbers = numbers.filter(num => num % 2 === 0);
// 结果: [2, 4]
使用 Array.prototype.reduce() 方法
将数组元素累积为单个值。适用于需要聚合或计算总和的场景。
const numbers = [1, 2, 3, 4];
const sum = numbers.reduce((acc, curr) => acc + curr, 0);
// 结果: 10
使用 Object.keys() 结合 map()
遍历对象属性并生成新数组。适用于需要将对象键或值转换为数组的场景。
const obj = { a: 1, b: 2 };
const keysArray = Object.keys(obj).map(key => obj[key]);
// 结果: [1, 2]
使用 Array.from() 方法
将类数组对象或可迭代对象转换为数组。适用于转换 arguments 或 NodeList 等场景。
const nodeList = document.querySelectorAll('div');
const divArray = Array.from(nodeList);
使用扩展运算符 ...
快速合并数组或展开可迭代对象。适用于需要浅拷贝或合并数组的场景。
const arr1 = [1, 2];
const arr2 = [3, 4];
const merged = [...arr1, ...arr2];
// 结果: [1, 2, 3, 4]
使用 Set 去重
通过 Set 的唯一性特性去除数组重复项。适用于需要快速去重的场景。

const duplicates = [1, 2, 2, 3];
const unique = [...new Set(duplicates)];
// 结果: [1, 2, 3]






