在什么情况下你会使用一个返回另一个函数(Javascript)的函数?

VoA*_*VoA 5 javascript function

感谢这个问题,我理解一个函数如何使用两组括号以及函数如何返回另一个在返回后立即触发的函数.

我不明白为什么这很好知道?如何应用它来解决问题?

例子:

function add(x){    
  return function(y){
    return x + y;
  };
}

add(3)(4) === 7; // true
Run Code Online (Sandbox Code Playgroud)

工作正常 - 当然.但为什么不这样写它呢?

function add(a, b) {
  return a + b;
}

add(3, 4) === 7; // true
Run Code Online (Sandbox Code Playgroud)

小智 0

如果您知道第一个参数始终相同,那么将其关闭会很方便,而不是一次又一次地传递它。对于简单的程序来说,这可能没有意义。但是,对于经常处理重复参数的程序来说,这种技术肯定很方便。