在不设置参数的情况下,此功能如何工作

How does this function work without setting the parameter?

本文关键字:何工作 工作 功能 设置 参数 情况下      更新时间:2023-09-26

我正在阅读Eloquent Javascript,看到了这个函数:

function multiplier(factor) {
  return function(number) {
    return number * factor;
  };
}
var twice = multiplier(2);
console.log(twice(5));
// → 10

然而,我没有理解内部函数是如何将变量(5)分配给数字参数的?Eloquent JS试图解释它,但我不明白。

内部函数是multiplier返回值。它直到console.log(twice(5));才被调用,在那里它被显式地传递值5