เก็ตเตอร์ของแอคเซสเซอร์ใน OOP ใน JavaScript
มาดูรายละเอียดเกี่ยวกับการใช้งาน เก็ตเตอร์ของคุณสมบัติแอคเซสเซอร์กันดีกว่า สมมติว่า เรามีคลาสต่อไปนี้ ที่มีคุณสมบัติส่วนตัว:
javascriptclass User {
#name;
constructor(name) {
this.#name = name;
}
}
มาสร้างคุณสมบัติสาธารณะ name
ในคลาสนี้กัน
ซึ่งจะสามารถอ่านได้,
แต่จะไม่สามารถเขียนค่าได้:
javascriptclass User {
#name;
constructor(name) {
this.#name = name;
}
get name() {
return this.#name;
}
}
ลองทดสอบการทำงาน สร้างออบเจ็กต์ จากคลาสของเรา โดยส่งค่า ชื่อเป็นพารามิเตอร์:
javascriptlet user = new User('john');
และตอนนี้อ่านชื่อผ่าน คุณสมบัติสาธารณะ:
javascriptlet name = user.name;
console.log(name);
แต่การพยายามเขียนชื่อ จะทำให้เกิดข้อผิดพลาด ตามที่เรา ต้องการ:
javascriptuser.name = 'eric';
Задание 1
จงเขียนเก็ตเตอร์แอคเซสเซอร์สำหรับ
คุณสมบัติของคลาส Employee