JavaScript 接受函数作为参数
示例
function transform(fn, arr) { let result = []; for (let el of arr) { result.push(fn(el)); //我们将转换后的项目的结果推入结果 } return result; } console.log(transform(x => x * 2, [1,2,3,4])); //[2,4,6,8]
如您所见,我们的transform函数接受两个参数,一个函数和一个集合。然后它将迭代该集合,并将值压入结果,并fn分别调用它们。
看起来很熟悉?这与工作原理非常相似!Array.prototype.map()
console.log([1, 2, 3, 4].map(x => x * 2)); //[2,4,6,8]