เก็ตเตอร์ของคุณสมบัติเสมือนใน OOP ใน JavaScript

ด้วยการใช้ตัวเข้าถึง (accessors) เราสามารถสร้าง คุณสมบัติเสมือนขึ้นมาได้ โดยที่คุณสมบัตินั้น ไม่มีอยู่จริงในวัตถุ มาดูตัวอย่างกัน สมมติว่าเรามีคลาสที่มีคุณสมบัติสาธารณะสองอย่าง:

javascriptclass User {
  constructor(name, surn) {
    this.name = name;
    this.surn = surn;
  }
}

มาสร้างคุณสมบัติที่สามกัน ซึ่งจะเก็บชื่อและ นามสกุล มาสร้างตัวเข้าถึง สำหรับสิ่งนี้:

javascriptclass User {
  constructor(name, surn) {
    this.name = name;
    this.surn = surn;
  }
  
  get full() {
    return this.name + ' ' + this.surn;
  }
}

มาทดสอบกัน สร้างวัตถุจากคลาส โดยส่งชื่อและนามสกุลเป็นพารามิเตอร์:

javascriptlet user = new User('john', 'smit');

มาแสดงค่าของคุณสมบัติสาธารณะ:

javascriptconsole.log(user.name); // 'john'
console.log(user.surn); // 'smit'

และตอนนี้มาแสดงค่าของ คุณสมบัติเสมือนของเรา:

javascriptconsole.log(user.full); // 'john smit'