js清除閉包的通常方式簡單介紹
閉包在js中是一個很重要的概念,這裡就不多介紹了。
具體可以參閱javascript閉包概念簡單解析一章節。
閉包雖然是一個利器,但是也是有弊端的,關於這個我們們這裡就不介紹了,下面直接進入正題。
例如"變數只初始化一次"這樣的需求,在常規的語言中可以使用如下方式:
[C#] 純文字檢視 複製程式碼class Class{ function init(){ this.n = 0; } function func(){ this.n ++; return this.n; } } var obj = new Class();
js通常則需要使用閉包來解決此問題:
[JavaScript] 純文字檢視 複製程式碼var obj = { func : (function(){ var n = 0; return function(){ n ++; return n; } })() }
但更建議採用這種方法(消除閉包):
[JavaScript] 純文字檢視 複製程式碼function Class(){ var self = this; self.n = 0; self.func = function(){ self.n ++; return self.n; } } var obj = new Class();
因為後者的可擴充套件性更好. 當需要實現對一個變數的不同操作時, 後一種可以只需要再定義一個不同的函式(也就是簡單線性擴充套件), 而前一種(閉包)則需要完全重寫。
相關文章
- 簡單介紹JavaScript閉包JavaScript
- javascript中的閉包概念簡單介紹JavaScript
- js宣告陣列的幾種方式簡單介紹JS陣列
- js閉包簡單總結JS
- JSON簡單介紹JSON
- nodejs簡單介紹NodeJS
- JSON物件簡單介紹JSON物件
- js WebSocket用法簡單介紹JSWeb
- javascript呼叫函式的方式簡單介紹JavaScript函式
- Node.js的模組載入方式與機制簡單介紹Node.js
- javascript閉包概念介紹JavaScript
- angularJS的router用法簡單介紹AngularJS
- require.js的作用簡單介紹UIJS
- JSON的優點簡單介紹JSON
- javascript函式呼叫方式簡單介紹JavaScript函式
- js通過例項介紹關於閉包的用法JS
- JavaScript 清除閉包JavaScript
- jquery自定義事件的使用方式簡單介紹jQuery事件
- js字串連線簡單介紹JS字串
- js cookie路徑簡單介紹JSCookie
- js 特權方法簡單介紹JS
- js短路運算簡單介紹JS
- js與&&運算子簡單介紹JS
- js isNaN函式的用法簡單介紹JSNaN函式
- js中大括號{}的用法簡單介紹JS
- js eval()函式的用法簡單介紹JS函式
- js如何阻止表單提交簡單介紹JS
- JS閉包的簡易使用JS
- javascript實現繼承方式簡單介紹JavaScript繼承
- alertify提示外掛使用方式簡單介紹
- 實現js檔案動態載入的幾種方式簡單介紹JS
- 簡單介紹Go語言常用的打log方式Go
- css引入外部css檔案的方式簡單介紹CSS
- 簡單介紹一下 JSONJSON
- js style.cssText用法簡單介紹JSCSS
- js事件委託原理簡單介紹JS事件
- js isPrototypeOf()函式用法簡單介紹JS函式
- node.js操作mongodb簡單介紹Node.jsMongoDB