我正在创建一个reduce函数,它使用另一个函数,它接受多个参数作为回调。我的问题是,如果我想测试一个参数是否存在的回调函数,我需要使用什么语法。
var result = _.reduce([1,2,3], function(memo) {
return memo;
});
_.reduce = function(arr, fun, opt){
//if(arguments[1][1] == undefined) return arr[0];
最后一行是我最好的尝试。我想说的是,如果结果行中的函数没有第二个参数,则返回arr [0]。
答案 0 :(得分:0)
如果我正确理解你的问题,你正试图访问函数调用中的参数。您可以使用arguments对象。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/arguments/length
它允许您遍历函数的参数并对它们执行某些操作。例如 -
function yourCustomReduceFunction() {
for (var i = 0; i < arguments.length; i++) {
console.log(arguments[i]);
}
}
希望这会有所帮助:)