摘要:常見的函數長這個樣子輸出這是個普普通通的函數聲明,在結尾不需要,你需要通過來調用它,函數才會執行。輸出是一個表達式,但不會調用函數,于是再在結尾加上來調用函數,這樣輸出因為優先于,所以會先執行函數,然后才進行非操作。
常見的函數長這個樣子
function foo() { console.log(123); } foo(); // 輸出: 123
這是個普普通通的函數聲明,在結尾不需要";",你需要通過foo()來調用它,函數才會執行。
!function foo(){ console.log(123); } //輸出: true
是一個表達式,但不會調用函數,于是再在結尾加上()來調用函數,這樣
!function foo(){ console.log(123); }() //輸出: //123 //true
因為()優先于!,所以會先執行函數,然后才進行非操作。
在函數體內如果無需調用自身,那么函數名都可以省了
!function(){ console.log(123); }() //輸出: //123 //true
這樣做也只是比(function(){})()節省了一個字節,而且理解起來不是很容易。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/85655.html
摘要:匿名函數是不能單獨寫的,所以就提不上立即執行了。六立即執行函數在閉包中的應用立即執行函數能配合閉包保存狀態。來看下上節內容中閉包的例子現在,我們來利用立即執行函數來簡化它第一個匿名函數執行完畢后,返回了第二個匿名函數。 前面的閉包中,提到與閉包相似的立即執行函數,感覺兩者還是比較容易弄混吧,嚴格來說(因為犀牛書和高程對閉包的定義不同),立即執行函數并不屬于閉包,它不滿足閉包的三個條件。...
摘要:要理解立即執行函數,需要先理解一些函數的基本概念。函數表達式使用關鍵字聲明一個函數,但未給函數命名,最后將匿名函數賦予一個變量,叫函數表達式,這是最常見的函數表達式語法形式。 javascript和其他編程語言相比比較隨意,所以javascript代碼中充滿各種奇葩的寫法,有時霧里看花,當然,能理解各型各色的寫法也是對javascript語言特性更進一步的深入理解。 ( functio...
摘要:和是兩種立即執行函數的常見寫法,最初我以為是一個括號包裹匿名函數,再在后面加個括號調用函數,最后達到函數定義后立即執行的目的,后來發現加括號的原因并非如此。 javascript和其他編程語言相比比較隨意,所以javascript代碼中充滿各種奇葩的寫法,有時霧里看花,當然,能理解各型各色的寫法也是對javascript語言特性更進一步的深入理解。 ( function(){…} )...
摘要:前言大家學的時候,經常遇到自執行匿名函數的代碼,今天我們主要就來想想說一下自執行。其實,前面兩個例子里的變量,也可以換成,因為和外面的不在一個作用于,所以不會出現問題,這也是匿名函數閉包的威力。 前言 大家學JavaScript的時候,經常遇到自執行匿名函數的代碼,今天我們主要就來想想說一下自執行。 在詳細了解這個之前,我們來談了解一下自執行這個叫法,本文對這個功能的叫法也不一定完全對...
摘要:匿名函數的好處在于可以減少局部變量,以免污染現有的運行環境。另外通過,這三個符號運行的匿名函數比運行的匿名函數可以減少一個字符的使用但是我們通常使用加因為其他的操作符可能會帶來其他的影響更多可以參考 js中的立即執行函數 ( function(){…} )()和( function (){…} () )是兩種javascript立即執行函數的常見寫法 問題: 為什么會出現上面的兩種不一...
摘要:將匿名函數賦予一個變量,叫函數表達式,這是最常見的函數表達式語法形式。組成這是一個被稱為自執行匿名函數的設計模式,主要包含兩部分。 一、函數聲明&函數表達式 1.1 函數聲明 (函數語句) showImg(https://segmentfault.com/img/bVbbqvT?w=278&h=166); (1)使用 function 關鍵字聲明一個函數,再指定一個函數名,叫函數聲明。...
閱讀 1363·2021-09-10 10:51
閱讀 2834·2019-08-30 15:54
閱讀 3374·2019-08-29 17:11
閱讀 932·2019-08-29 16:44
閱讀 1396·2019-08-29 13:47
閱讀 1092·2019-08-29 13:47
閱讀 1491·2019-08-29 12:23
閱讀 1045·2019-08-28 18:18