Class Accessors
index.ts
/*
Class
- Get And Set Accessors
*/
class User {
public get username(): string {
return this._username;
}
public set username(value: string) {
this._username = value;
}
msg: () => string;
constructor(private _username: string, public salary: number, public readonly address: string) {
this.msg = function () {
return `Hello ${this._username} Your Salary Is ${this.salary}`;
}
}
sayMsg() {
return `Hello ${this._username} Your Salary Is ${this.salary}`;
}
// get username() : string {
// return this._username;
// }
// set username(value: string) {
// this._username = value;
// }
}
let userOne = new User("Elzero", 6000, "Cairo");
console.log(userOne.username);
userOne.username = "Ahmed";
console.log(userOne.username);
console.log(userOne.salary);
console.log(userOne.msg());
console.log(userOne.sayMsg());