2017-12-28 35 views
1

Ich möchte eine Frage stellenWie definiere ich eine statische Eigenschaft in den ES6-Klassen

Ich möchte eine statische Eigenschaft in der Es6-Klasse haben. Dieser Eigenschaftswert ist ein leeres Array. Bitte überprüfen Sie den folgenden Code

class Game{ 
 

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

 
     } 
 

 
     static cards = []; 
 

 
    } 
 
    
 

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

Wie kann ich tun?

Mit freundlichen Grüßen Amir

+0

https://jsfiddle.net/03xngf6/ – Hackerman

+0

Dies ist keine gültige ES6-Syntax. – Bergi

Antwort

2

Ein Weg, es zu tun, wie dies sein könnte:

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

Dann können Sie tun:

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

Sie können einige nützliche Punkte in dieser discussion über einschließlich der statischen Eigenschaften in es6 finden.

3
class Game{ 

     constructor(){} 


} 
Game.cards = []; 

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

Sie können eine statische Variable so definieren.

Verwandte Themen