⊗tsSpOpSPO 15 of 37 menu

Statiske egenskaper i TypeScript

La oss se på hvordan vi kan få tilgang til statiske egenskaper inne i objekter.

La oss si at vi har følgende klasse med en statisk egenskap:

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

La oss nå lage en metode som viser den totale lønnen:

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

La oss nå lage en metode som endrer den totale lønnen:

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; } }

Statiske egenskaper vil være delte mellom forskjellige objekter. Dette betyr at når egenskapen endres i ett objekt, vil den endres i det andre også. La oss sjekke dette.

La oss opprette to objekter av klassen vår:

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

La oss endre lønnen for den første brukeren:

user1.setSalary(2000);

La oss sjekke at lønnen er endret også for den andre brukeren:

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

La oss sjekke at lønnen også er endret i klassens egen egenskap:

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

I klassen Student, legg til en statisk egenskap university. Skriv ut denne egenskapen uten å opprette et objekt.

Norsk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruker informasjonskapsler for nettstedets funksjonalitet, analyse og personalisering. Behandling av data foregår i henhold til Personvernerklæringen.
godta alle tilpass avvis