这是什么意思? !function()

这是什么意思? !function()

问题描述:

这是什么意思?这是什么意思? !function()

!function a(){ 
}({ 
x: [function(){alert(2);}] 
}) 

当我阅读铬扩展中的一些代码时,我发现这块代码。我很困惑这应该如何工作。

+0

链接的重复解释了'函数(){}()'的一部分!关于'{x:[function(){alert(2);}]}'部分,它创建了一个属性的对象,该属性是一个包含一个函数元素的数组,但函数'a()有一个空的身体,所以它不会做任何事情.. – nnnnnn

这只是另一种编写IIFE的方法,使用!运算符而不是括号。有多种运营商可以使用这种方法:

! function(text) { 
 
    console.log(text); 
 
}('hello');