เก็ตเตอร์ของคุณสมบัติเสมือนใน OOP ใน JavaScript
ด้วยการใช้ตัวเข้าถึง (accessors) เราสามารถสร้าง คุณสมบัติเสมือนขึ้นมาได้ โดยที่คุณสมบัตินั้น ไม่มีอยู่จริงในวัตถุ มาดูตัวอย่างกัน สมมติว่าเรามีคลาสที่มีคุณสมบัติสาธารณะสองอย่าง:
class User {
constructor(name, surn) {
this.name = name;
this.surn = surn;
}
}
มาสร้างคุณสมบัติที่สามกัน ซึ่งจะเก็บชื่อและ นามสกุล มาสร้างตัวเข้าถึง สำหรับสิ่งนี้:
class User {
constructor(name, surn) {
this.name = name;
this.surn = surn;
}
get full() {
return this.name + ' ' + this.surn;
}
}
มาทดสอบกัน สร้างวัตถุจากคลาส โดยส่งชื่อและนามสกุลเป็นพารามิเตอร์:
let user = new User('john', 'smit');
มาแสดงค่าของคุณสมบัติสาธารณะ:
console.log(user.name); // 'john'
console.log(user.surn); // 'smit'
และตอนนี้มาแสดงค่าของ คุณสมบัติเสมือนของเรา:
console.log(user.full); // 'john smit'