我正在尝试在javascript someMathArray(x) { }
中创建一个更高阶的函数,它返回一个函数并接受另一个参数。我希望函数采用原始数组,比如[1,2,3,4]
然后应用另一个函数,例如名为mult2(a) { return a*2 }
(但是,我希望这适用于我传入的任何函数。我不会希望将mult2(a)硬编码到函数中),然后返回包含[2,4,6,8]
答案 0 :(得分:1)
这样的东西?
function someMathArray(array) {
return function(fun) {
return array.map(fun);
};
}
var fun = someMathArray([1,2,3,4,5]);
var output = fun(function(a) { return a*2; });
document.getElementById('output').innerHTML = JSON.stringify(output);
<div id="output"></div>
或
function someMathArray(array) {
return array.map.bind(array);
}
var fun = someMathArray([1,2,3,4,5]);
var output = fun(function(a) { return a*2; });
document.getElementById('output').innerHTML = JSON.stringify(output);
<div id="output"></div>