有时我们看见js函数后面跟着多个小括号是怎么回事?f( )( )( )…
f()意思是执行f函数,返回子函数
f()()执行子函数,返回孙函数
f()()()执行孙函数
… …
但注意,如果想这样执行,函数结构必须是这样,f的函数体里要return 子函数,子函数里要return 孙函数,如果没有return关键字,是不能这样连续执行的,会报错的。
举个例子:k是f的子函数,return子函数k,所以f()()能连续执行。
var i=1;
function f(){
i++;
console.log("------------- : "+i)
return k;
function k() {
return "I love you!"
}
}
f();
console.log("111111111111")
f()()
alert(f()())
结果如图:
作者:JavaWeb大牛
来源:CSDN
原文:https://blog.csdn.net/neymar_jr/article/details/79119910
版权声明:本文为博主原创文章,转载请附上博文链接!