Penetap Sifat Khayalan dalam OOP dalam JavaScript

Selain pemeroleh sifat khayalan, penetapnya juga boleh dicipta. Dalam kes ini, di dalam penetap kita perlu mendapatkan data, memisahkannya dan menulis bahagian yang sepadan kepada sifat awam yang diperlukan.

Mari kita cuba. Mari laksanakan penetap sifat khayalan full:

javascriptclass User {
  constructor(name, surn) {
    this.name = name;
    this.surn = surn;
  }
  
  get full() {
    return this.name + ' ' + this.surn;
  }
  
  set full(full) {
    let [name, surn] = full.split(' ');
    
    this.name = name;
    this.surn = surn;
  }
}

Permudahkan penyahstrukturan:

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

Cipta objek kelas:

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

Tulis data ke dalam penetap khayalan kami:

javascriptuser.full = 'eric jons';

Periksa bahawa sifat objek telah berubah:

javascriptconsole.log(user.name); // 'eric'
console.log(user.surn); // 'jons'
console.log(user.full); // 'eric jons'