2017-04-02 11 views
1

ES2015以降、JSでシングルトンを作成する適切な方法は何ですか? 私は、次のような多くの方法を知っている:シングルトンを正しく作成する方法ES6

(() => { 
    let instance; 
    class Singleton{ 
    constructor(){ 
    instance = instance || this; 
    } 
    } 
window.Singleton = Singleton; // or sth to export this class 
})(); 
var a = new Singleton(); 
var b = new Singleton(); // a is the same as b 

しかし、それはシングルトンクラスで「新しい」演算子を使用するための良い方法のように見えるしていません。だから私の質問は、ES6でシングルトンを作成するための「適切な」方法があるかどうかです。

+1

これまでも尋ねられました。 [ここにチェック](http://stackoverflow.com/questions/1479319/simplest-cleanest-way-to-implement-singleton-in-javascript) – jakeehoffmann

+0

これはES6より前であり、これはこの質問に関するものです – Berrigan

+0

何も変更されていませんES6では。それはまだJSです。特にES6クラスを卒業したことがあった場合、それを含まない答えを受け入れた理由は明確ではありません。 – estus

答えて

1
var a = (function() { 

    // can put private vars/methods here. 
    var a = 3; 
    var b = 5; 
    var sum =() => a+b;  

    return {// your singleton object 
      getSum: sum 
      // ... 
     }; 

}()); 
関連する問題