var test = { globalVariable: 'abc', init: function () { this.method(); this.method0(); }, method: function () { …… }, method0: function () { …… } };
Or
(function () { var globalVariable = 'abc'; // init method(); method0(); function method() { …… } function method0() { …… } })();
這兩種哪種比較好一點?物件方式的看起來很清晰 但用起來也有很多弊端 比如找方法、變數前邊都得帶上this
這樣會不會增加了不必要的效能消耗?
寫成物件會不會方便了擴充等 因為可以已物件導向的方式進行繼承、多型 萬一以後程式迭代遇到邏輯和物件裡的邏輯一樣或相似 就會方便很多~
考慮使用ES6+Babel呀,使用類,還可以更好的OO
js 已經遠遠偏離了作者本意了,主流不斷把她往 OO 上扭,另一個小眾流派想把她調教成函數式。回到問題,看得出題主是傾向 OO 的,那麼就按照 ES6 和 ES7 的套路去弄更好,性能並沒有差別。
簡單點理解,都行,其實不污染外在的環境,怎麼做都沒錯。
還有一點,不要讓接手你程式碼的朋友討厭你...