JavaScript功能前的感叹号有什么作用?
!function () {}();
回答:
JavaScript语法101。这是一个 :
function foo() {}
请注意,这里没有分号:这只是一个函数 。您将需要调用foo()
来实际运行该功能。
现在,当我们添加看似无害的感叹号时:!function foo() {}
它将变为 。现在它是一个 。
该!
单独不会调用函数,当然,但我们现在可以把()
结尾:!function foo() {}()
它的优先级高于!
并立即调用函数。
因此,作者正在做的是为每个函数表达式保存一个字节。更具可读性的书写方式是:
(function(){})();
最后,!
使表达式返回true。这是因为在默认情况下所有IIFE回报undefined
,这给我们留下了!undefined
这是true
。不是特别有用。
以上是 JavaScript功能前的感叹号有什么作用? 的全部内容, 来源链接: utcz.com/qa/421944.html