2016-05-08 2 views
0

JavaScriptコードがいくつかありますが、なぜ論理演算子(!)が関数宣言で使用されているのかわかりません。私はかなり確信しているなぜJavaScript関数の宣言で論理演算子を使用する

! function (a) { 

     ! function (a) 
     { 
      "use strict"; 
      a.Shorthand = { 
       UI: {}, 
       helpers: {}, 
       Data: {} 
      } 
     }(window), ... 
}(!1); 

その生命維持(完了)と、それが主な目的だ縮小ですが、それは私の知る限り行くようだ:これは小さな抽出物です。私は何の説明にも触れていない。 残りのコードがそこにあるとき、それはすべて動作します。 ありがとう

答えて

0

これは、IIFEの関数宣言の代わりに関数式が必要です。関数を式として使用すると、imidiatellyを呼び出すことができます。それは表現の一部ではない場合、それはので、このコードは動作しませんすることはできません。

function(){}() 

をこれが機能する一方:

!function(){}() 
(function(){}()) 
(function(){})() 
var a = function(){}() 
関連する問題