Maison > interface Web > js tutoriel > le corps du texte

exemple d'utilisation du descripteur de propriété

DDD
Libérer: 2023-12-06 14:31:45
original
1454 Les gens l'ont consulté

Property Descriptor est un concept important en JavaScript, utilisé pour décrire les propriétés des objets. En utilisant des descripteurs de propriétés, nous pouvons obtenir, modifier et créer des propriétés d'objets. Voici plusieurs exemples d'utilisation du descripteur de propriété :

Exemple 1 : obtenir le descripteur de propriété de la propriété

Supposons que nous ayons une personne objet, qui a un nom de propriété, nous pouvons utiliser la méthode Object.getOwnPropertyDescriptor() pour obtenir la propriété. de cette propriété Descripteur :

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  
//   }
Copier après la connexion

Dans le code ci-dessus, Object.getOwnPropertyDescriptor(person, 'name') renvoie un objet qui contient un descripteur de propriété qui décrit la propriété name de l'objet personne.

Exemple 2 : Création de nouvelles propriétés à l'aide du descripteur de propriété

Nous pouvons créer de nouvelles propriétés à l'aide du descripteur de propriété. Par exemple, supposons que nous souhaitions créer une nouvelle propriété age sur l'objet personne :

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
Copier après la connexion

Dans le code ci-dessus, Object.defineProperty(person, 'age', { ... }) définit une nouvelle propriété appelée age, et utilise un descripteur de propriété pour le décrire. Maintenant, nous avons accès à person.age et pouvons modifier la valeur de la propriété age en définissant person.age.

Exemple 3 : Utiliser le descripteur de propriété pour modifier une propriété existante

Nous pouvons également utiliser le descripteur de propriété pour modifier le descripteur de propriété d'une propriété existante. Par exemple, supposons que nous souhaitions modifier le descripteur de propriété de la propriété name de l'objet personne :

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'
Copier après la connexion

Dans le code ci-dessus, nous utilisons la méthode Object.defineProperty() pour modifier le descripteur de propriété de la propriété name de l'objet personne . Maintenant, nous avons accès à person.name et pouvons modifier la valeur de la propriété name en définissant person.name. Notez que dans cet exemple, nous avons modifié l'attribut value de la propriété, ce qui a également modifié la valeur réelle de la propriété.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal