⊗tsSpOpSPO 15 of 37 menu

TypeScriptでの静的プロパティ

オブジェクト内部で静的プロパティにどのようにアクセスするかを見てみましょう。

次のような静的プロパティを持つクラスがあるとします:

class User { public name: string; public static salary: number = 1000; constructor(name: string) { this.name = name; } }

では、総給与額を出力するメソッドを作成してみましょう:

class User { public name: string; public static salary: number = 1000; constructor(name: string) { this.name = name; } getSalary(): number { return User.salary; // クラス名でアクセス } }

次に、総給与額を変更するメソッドを作成してみましょう:

class User { public name: string; public static salary: number = 1000; constructor(name: string) { this.name = name; } getSalary(): number { return User.salary; } setSalary(salary: number) { User.salary = salary; } }

静的プロパティは異なるオブジェクト間で共有されます。つまり、あるオブジェクトでプロパティを変更すると、別のオブジェクトでも変更されるということです。これを確認してみましょう。

このクラスから2つのオブジェクトを作成します:

let user1: User = new User('john'); let user2: User = new User('eric');

最初のユーザーの給与を変更してみましょう:

user1.setSalary(2000);

2番目のユーザーの給与も変更されているか確認します:

console.log(user2.getSalary()); // 2000

クラス自体のプロパティも変更されているか確認します:

console.log(User.salary); // 2000

クラス Student に静的プロパティ university を追加してください。オブジェクトを宣言せずにこのプロパティを出力してください。

日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItalianoქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否