JavaScript 編寫匿名函數(shù)的幾種方法
更新時間:2010年02月21日 16:27:57 作者:
匿名函數(shù)可以有效控制變量作用域,構(gòu)造閉包 (Closure),防止對全局變量造成污染。在 JavaScript 中,編寫匿名函數(shù),有以下幾種方法.
錯誤模式:語法錯誤警告
function(){
// insert code here
}();
模式一:函數(shù)字面量 (Function Literal)
先聲明函數(shù)對象,然后執(zhí)行。
(function(){
// insert code here
})();
模式二:優(yōu)先表達式 (Prior Expression)
由于 JavaScript 按照從內(nèi)到外的順序執(zhí)行表達式,因此使用括號來強制執(zhí)行已聲明的函數(shù)。
(function(){
// insert code here
}());
模式三:Void 操作符 (Void Operator)
使用 Void 操作符執(zhí)行一個單獨的操作數(shù)。
void function(){
// insert code here
}();
從技術(shù)上講,這三種代碼模式是等價的。但在實際應(yīng)用中,例如 YUI、jQuery 等框架,模式一更被廣泛使用。
復(fù)制代碼 代碼如下:
function(){
// insert code here
}();
模式一:函數(shù)字面量 (Function Literal)
先聲明函數(shù)對象,然后執(zhí)行。
復(fù)制代碼 代碼如下:
(function(){
// insert code here
})();
模式二:優(yōu)先表達式 (Prior Expression)
由于 JavaScript 按照從內(nèi)到外的順序執(zhí)行表達式,因此使用括號來強制執(zhí)行已聲明的函數(shù)。
復(fù)制代碼 代碼如下:
(function(){
// insert code here
}());
模式三:Void 操作符 (Void Operator)
使用 Void 操作符執(zhí)行一個單獨的操作數(shù)。
復(fù)制代碼 代碼如下:
void function(){
// insert code here
}();
從技術(shù)上講,這三種代碼模式是等價的。但在實際應(yīng)用中,例如 YUI、jQuery 等框架,模式一更被廣泛使用。
您可能感興趣的文章:
- 使一個函數(shù)作為另外一個函數(shù)的參數(shù)來運行的javascript代碼
- JavaScript獲取鼠標(biāo)坐標(biāo)的函數(shù)(兼容IE、FireFox、Chrome)
- javascript parseInt與Number函數(shù)的區(qū)別
- javascript 獲取url參數(shù)和script標(biāo)簽中獲取url參數(shù)函數(shù)代碼
- javascript讓setInteval里的函數(shù)參數(shù)中的this指向特定的對象
- 對字符串進行HTML編碼和解碼的JavaScript函數(shù)
- javascript 函數(shù)速查表
- jQuery學(xué)習(xí)7 操作JavaScript對象和集合的函數(shù)
- 兩個比較有用的Javascript工具函數(shù)代碼
- Javascript 使用function定義構(gòu)造函數(shù)
- Javascript函數(shù)的參數(shù)
- 詳解javascript函數(shù)的參數(shù)
相關(guān)文章
除Console.log()外更多的Javascript調(diào)試命令
本篇文章給大家介紹了除Console.log()外更多的Javascript調(diào)試命令,方便大家更多環(huán)境下的JS調(diào)試,學(xué)習(xí)下吧。2018-01-01
Bootstrap Paginator+PageHelper實現(xiàn)分頁效果
這篇文章主要為大家詳細介紹了Bootstrap Paginator+PageHelper實現(xiàn)分頁效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-12-12
JavaScript緩沖運動實現(xiàn)方法(2則示例)
這篇文章主要介紹了JavaScript緩沖運動實現(xiàn)方法,簡單分析了JavaScript緩沖運動的實現(xiàn)原理與相關(guān)運算技巧,并給出了兩則實例代碼予以總結(jié)分析,需要的朋友可以參考下2016-01-01
javascript實現(xiàn)鼠標(biāo)拖動改變層大小的方法
這篇文章主要介紹了javascript實現(xiàn)鼠標(biāo)拖動改變層大小的方法,涉及javascript操作鼠標(biāo)事件及樣式的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-04-04
JavaScript數(shù)組去重實現(xiàn)方法小結(jié)
這篇文章主要介紹了JavaScript數(shù)組去重實現(xiàn)方法,結(jié)合實例形式總結(jié)分析了JavaScript數(shù)組去重ES3、ES5及ES6常見實現(xiàn)方法與操作注意事項,需要的朋友可以參考下2020-01-01
innerHTML 和 getElementsByName 在IE下面的bug 的解決
innerHTML 真的一個麻煩的東西。IE 和 firefox 對dom 處理的方式不是很一樣。IE 對動態(tài)加載的很多dom 不支持動態(tài)更新。2010-04-04
javascript高級編程之函數(shù)表達式 遞歸和閉包函數(shù)
這篇文章主要介紹了javascript高級編程之函數(shù)表達式 遞歸和閉包函數(shù)的相關(guān)資料,需要的朋友可以參考下2015-11-11

