我是个javascript新手,读别人的javascript代码,有一个语法不太理解,上网查也不知道怎么查,只好麻烦大家了。varfuncName=function(){...}();类似于上面这种形式是什么意思呢。varfuncName=function(){...}我可以理解是定义函数。后面怎么还有一对括号()呢?
2 回答
素胚勾勒不出你
TA贡献1827条经验 获得超9个赞
直接看代码吧:varfn=function(){//xxxxxxxreturn"abc";}()console.log(fn)//"abc"如果没有括号,那就是给匿名函数起个名字叫fn,如果有括号就表示调用了匿名函数,将返回值赋给fnPS:不要修改答案啊,改了就文不对题了,亲~
当年话下
TA贡献1890条经验 获得超9个赞
给你一个更直观的例子functiongetA(){return"a";}varname=getA();console.log(name);varname=function(){return"a"}();console.log(name);上面两个例子是等效的,name都会被赋值为"a",但是第二种方法比第一种简单。鉴于你是初学者,这里我就不提什么是闭包了,怕你搞混淆。
添加回答
举报
0/150
提交
取消