2016-03-13 145 views
3
function f1() { 

    function f3() { 
    v = 3; 
    return function(i) { 
     return i + v; 
    } 
    } 
    console.log(f3()(5)); 
} 
f1(); 

我一直在试图找到一个可以阅读有关返回匿名函数的源代码,如本例所示。另外如何通过变量f3()(5)是否有从函数返回匿名函数的名称?

是否有此条款?链接表示赞赏。

+1

JavaScript关闭。 –

回答

5

我想你的意思currying

转换函数可以接受多个参数 成只有一个参数(第一的 参数到原来的功能)功能的技术,并返回一个新函数 取参数的其余部分并返回结果。

2

内函数称为closure

闭包是指独立的(自由)的变量的功能。换句话说,闭包中定义的函数'记住'它创建的环境。

术语“柯里”是指更一般的数学概念,并且是编程语言无关的。我也认为它经常被滥用,因为这个词太可爱了。