如果不设置参数,此功能如何工作?

时间:2014-11-06 11:09:46

标签: javascript

我正在阅读Eloquent Javascript并看到了这个功能:

function multiplier(factor) {
  return function(number) {
    return number * factor;
  };
}

var twice = multiplier(2);
console.log(twice(5));
// → 10

但是,我没有理解内部函数如何将变量(5)赋给数字参数? Eloquent JS试图解释它,但我没有得到它。

1 个答案:

答案 0 :(得分:1)

内部函数是multiplier返回值。在console.log(twice(5));显式传递值5之前,它不会被调用。