如何在JavaScript 中建立單例
在JavaScript 中,單例模式確保只能建立一個類別或物件的一個實例。實現單例最簡單的方法是透過物件字面量:
var myInstance = { method1: function () { // ... }, method2: function () { // ... } };
對於私有成員,使用函數表達式:
var myInstance = (function() { var privateVar = ''; function privateMethod () { // ... } return { // public interface publicMethod1: function () { // All private members are accessible here }, publicMethod2: function () { } }; })();
這種模式稱為模組模式,封裝了透過閉包實現私有成員。
為了防止修改,請使用Object.freeze:
Object.freeze(myInstance);
中ES6,使用ES 模組:
// my-singleton.js const somePrivateState = [] function privateFn () { // ... } export default { method1() { // ... }, method2() { // ... } }
然後導入它:
import myInstance from './my-singleton.js' // ...
以上是如何在 JavaScript 中實作單例模式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!