Rumah  >  Artikel  >  hujung hadapan web  >  contoh penggunaan propertydescriptor

contoh penggunaan propertydescriptor

DDD
DDDasal
2023-12-06 14:31:451427semak imbas

Deskriptor Harta ialah konsep penting dalam JavaScript, yang digunakan untuk menerangkan sifat objek. Dengan menggunakan Deskriptor Harta, kita boleh mendapatkan, mengubah suai dan mencipta sifat objek. Berikut ialah beberapa contoh penggunaan Deskriptor Harta:

Contoh 1: Dapatkan Deskriptor Harta bagi harta tersebut

Andaikan kita mempunyai orang objek, yang mempunyai nama harta, kita boleh menggunakan kaedah Object.getOwnPropertyDescriptor() untuk mendapatkan Hartanah bagi sifat ini Deskriptor:

let person = {  
  name: 'Alice'  
};  
  
let desc = Object.getOwnPropertyDescriptor(person, 'name');  
  
console.log(desc);  
// 输出:  
//   {  
//     value: 'Alice',  
//     writable: true,  
//     enumerable: true,  
//     configurable: true,  
//     get: undefined,  
//     set: undefined  
//   }

Dalam kod di atas, Object.getOwnPropertyDescriptor(orang, 'nama') mengembalikan objek yang mengandungi deskriptor sifat yang menerangkan sifat nama objek orang itu.

Contoh 2: Mencipta sifat baharu menggunakan Deskriptor Hartanah

Kita boleh mencipta sifat baharu menggunakan Deskriptor Harta. Sebagai contoh, katakan kita ingin mencipta umur harta baharu pada objek orang itu:

let person = {};  
  
Object.defineProperty(person, 'age', {  
  value: 25,  
  writable: true,  
  enumerable: true,  
  configurable: true,  
  get: function() { return this._age; },  
  set: function(newVal) { this._age = newVal; }  
});  
  
console.log(person.age); // 输出:25

Dalam kod di atas, Object.defineProperty(orang, 'umur', { ... }) mentakrifkan harta baharu yang dipanggil umur, Dan gunakan Deskriptor Harta untuk menerangkannya. Kini, kami mempunyai akses kepada person.age dan boleh mengubah suai nilai harta umur dengan menetapkan person.age.

Contoh 3: Menggunakan Deskriptor Harta untuk mengubah suai harta sedia ada

Kita juga boleh menggunakan Deskriptor Harta untuk mengubah suai deskriptor harta harta sedia ada. Sebagai contoh, katakan kami ingin mengubah suai deskriptor sifat bagi sifat nama objek orang:

let person = {  
  name: 'Alice'  
};  
  
Object.defineProperty(person, 'name', {  
  value: 'Bob',  
  writable: true,  
  enumerable: true,  
  configurable: true,  
  get: function() { return this._name; },  
  set: function(newVal) { this._name = newVal; }  
});  
  
console.log(person.name); // 输出:'Bob'

Dalam kod di atas, kami menggunakan kaedah Object.defineProperty() untuk mengubah suai deskriptor sifat bagi sifat nama objek orang . Kini, kami mempunyai akses kepada person.name dan boleh mengubah suai nilai harta nama dengan menetapkan person.name. Ambil perhatian bahawa dalam contoh ini kami mengubah suai atribut nilai harta, yang turut mengubah nilai sebenar harta itu.

Atas ialah kandungan terperinci contoh penggunaan propertydescriptor. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Artikel berkaitan

Lihat lagi