每个人都非常乐于助人,我现在了解什么更高阶,并且意识到仅仅是箭头功能使我感到困惑。我需要尝试更多地了解它们。
function multiplier(factor) {
return number => number * factor;
}
let twice = multiplier(2);
console.log(twice(5));
为什么使用退货号码?
不是返回的变量number
,而是一个函数,如果您不熟悉ES6箭头函数语法,那么使用旧语法是相同的,现在很清楚是怎么回事?
function multiplier(factor) {
return function(number) {
return number * factor;
}
}
let twice = multiplier(2);
console.log(twice(5));
返回函数的函数称为Higher-Order Function
高阶函数multiplier()
接受单个参数factor
,并返回一个新的(arrow)函数。
新函数接受单个参数number
,并返回factor
与number
的相乘。
由于关闭,返回的函数可以访问factor
参数。