文書の過去の版を表示しています。
JavaScript 構文
ES6 class
Chrome v72、V8 v7.2 から class の static メンバー変数をサポートしているので以下のような書き方ができる。
ただし、この構文は Mobile Chrome では 2019/09/12 現在 v77 であるが動作しなかった。
FireFox などでも勿論動作しないので注意が必要である。
class Counter { static _count = 0; static increment() { return this._count++; } }
では、Mobile でも動作する static メンバー変数はどう定義するか?
それはとても簡単である。以下のように static メンバー関数内でクラスメンバーを初期化するだけである。
class Counter { static increment() { if (!this._count) this._count = 0; return this._count++; } }