JavaScript功能前的感叹号有什么作用?

!function () {}();

回答:

JavaScript语法101。这是一个 :

function foo() {}

请注意,这里没有分号:这只是一个函数 。您将需要调用foo()来实际运行该功能。

现在,当我们添加看似无害的感叹号时:!function foo() {}它将变为 。现在它是一个 。

!单独不会调用函数,当然,但我们现在可以把()结尾:!function foo() {}()它的优先级高于!并立即调用函数。

因此,作者正在做的是为每个函数表达式保存一个字节。更具可读性的书写方式是:

(function(){})();

最后,!使表达式返回true。这是因为在默认情况下所有IIFE回报undefined,这给我们留下了!undefined这是true。不是特别有用。

以上是 JavaScript功能前的感叹号有什么作用? 的全部内容, 来源链接: utcz.com/qa/421944.html

回到顶部