上級 › インスタンス全体で共有したい値をstaticにし忘れる › パターン2
インスタンス全体で共有したい値をstaticにし忘れる
クラスのインスタンスをまたいで値を共有したい場合はstaticフィールドが必要です。
1 class Ticket { 2 ______ nextId = 1; ^ 3 constructor() { 4 this.id = Ticket.nextId++; 5 } 6 } 7 const t1 = new Ticket(); 8 const t2 = new Ticket(); 9 const t3 = new Ticket(); 10 console.log(t3.id);
出力: NaN期待: 3 (エラーにはなりません)
空欄を埋めて実行を通す
nextIdをstaticにしないと、Ticket.nextIdはクラス自身のプロパティとして存在せず、undefined++でNaNになってしまいます。
次の問題