这是我说的函数。
function multiplier(factor) {
return number => number * factor;
}
let twice = multiplier(2);
console.log(twice(5));
// output → 10
在这个函数中,不应该是 number
是未定义的,因为我们只给了一个参数。而这个参数会被乘法并存储在数字中......但任何与 undefined
是 NaN
,对吗?是 number = 1
这里有什么问题吗?
function multiplier(factor) {
return number => number * factor;
}
let twice = multiplier(2);
乘法器返回一个函数,所以两次是这样的。
twice = number => number * factor
因为......乘法器返回一个函数,所以两次是这样的 multiplier
函数返回一个箭头函数,值为 factor
它是一个不同的语法,用于下面的简单定义。
function twice(number) {
// Value 2 is part of function definition as returned from multiplier() function
return number * 2;
}
在 console.log(twice(5))
你传递的是参数值5,所以它将返回 5 * 2
.