問 JS中(function(){xxx})(); 這種寫法是什麼意思?

自執行匿名函數:javascript

  • 常見格式:(function() { /* code */ })();
  • 解釋:包圍函數(function(){})的第一對括號向腳本返回未命名的函數,隨後一對空括號當即執行返回的未命名函數,括號內爲匿名函數的參數。
  • 做用:能夠用它建立命名空間,只要把本身全部的代碼都寫在這個特殊的函數包裝內,那麼外部就不能訪問,除非你容許(變量前加上window,這樣該函數或變量就成爲全局)。各JavaScript庫的代碼也基本是這種組織形式。

總結一下,執行函數的做用主要爲 匿名 和 自動執行,代碼在被解釋時就已經在運行了。java

其餘寫法函數

(function () { /* code */ } ()); 
!function () { /* code */ } ();
~function () { /* code */ } ();
-function () { /* code */ } ();
+function () { /* code */ } ();
相關文章
相關標籤/搜索