【问题标题】:what does `!function()` mean? [duplicate]`!function()` 是什么意思? [复制]
【发布时间】:2016-02-14 06:56:39
【问题描述】:

我正在使用一个很好的bundle,它将 Bootstrap 与 Symfony 集成在一起。它包含一些用于处理表单字段集合的 javascript。当我查看code 以了解他们是如何做到的时,我遇到了这个:

!function($){

  //function body

}(window.jQuery);

我对 javascript 足够熟悉,可以将 (function(arg){})(anArg); 识别为一个自执行函数,但由于它缺少括号,我不知道 ! 是在否定什么。

这里发生了什么?

【问题讨论】:

    标签: javascript jquery


    【解决方案1】:

    前面的!接受不可解析的语句,并允许它被 JS 引擎解析,然后返回 true。

    function(){}();
    SyntaxError: Unexpected token (
    
    !function(){}();
    >>true
    

    Source

    【讨论】:

      猜你喜欢
      • 2012-07-04
      • 2013-08-25
      • 2013-11-18
      • 1970-01-01
      • 1970-01-01
      • 2014-10-06
      • 2018-02-21
      • 1970-01-01
      • 2012-03-05
      相关资源
      最近更新 更多