const array = [1, 2, 3, 4, 5];
// 自定义map函数
function myMap(array, callback) {
const newArray = [];
for (let i = 0; i < array.length; i++) {
newArray.push(callback(array[i], i, array));
}
return newArray;
}
// 使用自定义的map函数
const mappedArray = myMap(array, (item, index, arr) => {
return item * 2; // 示例:将每个元素乘以2
});
console.log(mappedArray); // 输出: [2, 4, 6, 8, 10]
这段代码定义了一个自定义的`myMap`函数,它模拟了JavaScript内置`Array.prototype.map`方法的行为。该函数接受两个参数:一个数组和一个回调函数。回调函数被依次应用于数组的每个元素,并且回调函数的结果被收集到一个新数组中。最后,这个新数组被返回。在示例中,回调函数将每个元素乘以2,并展示了如何使用自定义的`myMap`函数。