wOl*_*iNe 2 javascript function
据我所知,以下是"自我调用功能":
func(){}();
Run Code Online (Sandbox Code Playgroud)
它与以下有什么不同?
func(){} func();
Run Code Online (Sandbox Code Playgroud)
Tom*_*icz 11
我假设你的意思是(I)之间有什么区别:
function(){}();
Run Code Online (Sandbox Code Playgroud)
和(II):
function func(){};
func();
Run Code Online (Sandbox Code Playgroud)
甚至(III):
var func = function(){};
func();
Run Code Online (Sandbox Code Playgroud)
所有三个在结果方面表现相同,但是它们具有不同的命名和范围结果:
我:这不会使任何名称的功能可用,它运行一次而被遗忘.您将来不能参考它
II:func功能在整个封闭功能中创建并可用,甚至在定义之前(提升)
III:func定义指向函数的变量.在定义之前无法访问它.
请注意,在II和III中,函数可以通过func名称进行引用,并且可以再次调用多次.I中的自我调用功能无法做到这一点.