关于javascript:`!function()`是什么意思?

what does `!function()` mean?

本问题已经有最佳答案,请猛点这里访问。

我正在使用一个很好的捆绑,它将Bootstrap与Symfony集成在一起。 它包含一些用于处理表单字段集合的JavaScript。 当我查看代码以了解它们是如何做到的时候我跑过这个:

1
2
3
4
5
!function($){

  //function body

}(window.jQuery);

我对javascript很熟悉,认为(function(arg){})(anArg);是一个自动执行的函数,但由于缺少括号,我不知道!在否定。

这里发生了什么?


前面的! 获取un-parseable语句,并允许JS引擎解析它,然后返回true。

1
2
3
4
5
function(){}();
SyntaxError: Unexpected token (

!function(){}();
>>true

资源