使用的重要性!在这段代码中
var testValue;
!function test() { testValue = 3; }();
console.log(testValue);
使用的重要性!在这段代码中
var testValue;
!function test() { testValue = 3; }();
console.log(testValue);
!
指示解释器将后面的内容解析为表达式,而不是函数声明。函数声明不能在同一行调用,所以如果没有!
,aSyntaxError
会被抛出:
var testValue;
function test() { testValue = 3; }();
console.log(testValue);
只有函数表达式可以立即调用。但是,为了表示函数表达式,在函数周围使用括号可能会更清楚,而不是在任何地方都没有使用函数名称!
时命名函数没有那么多意义,例如:test
var testValue;
(() => {
testValue = 3;
})();
console.log(testValue);
函数不会自动成为对象。您应该在括号内定义它或将其分配给变量。如果你用!用于函数定义。这意味着 !(function(){console.log("hi");}) 现在您可以插入 () 来运行该函数。