web-dev-qa-db-ja.com

ES6クラスで静的プロパティを定義する方法

ES6クラスに静的プロパティが必要です。このプロパティ値は、最初は空の配列です。

    class Game{

        constructor(){
           // this.cards = [];
        }

        static cards = [];
    }
    
    Game.cards.Push(1);

    console.log(Game.cards);

どうすればいいですか?

29
Amir Azarbashi

その方法の1つは次のようになります。

let _cards = [];
class Game{
    static get cards() { return _cards; }
}

その後、次のことができます。

Game.cards.Push(1);
console.log(Game.cards);

Es6に静的プロパティを含めることについて discussion でいくつかの便利なポイントを見つけることができます。

36
margaretkru
class Game{
   constructor(){}
}
Game.cards = [];

Game.cards.Push(1);
console.log(Game.cards);

そのような静的変数を定義できます。

42
zagoa