Dans JavaScript, vous pouvez utiliser l'opérateur de suppression pour supprimer les propriétés dans un objet:
La copie de code est la suivante:
var t = {a: 42, b: 26};
console.log (t); // objet {a = 42, b = 26}
supprimer ta;
console.log (t); // objet {b = 26}
La limitation de cette opération de suppression de la propriété est que l'opérateur de suppression ne peut supprimer que toutes les propriétés de l'objet lui-même et ne peut pas supprimer les propriétés héritées de l'objet prototype. Si vous souhaitez supprimer la propriété dans l'objet Prototype, vous devez explicitement obtenir l'objet Prototype et effectuer des opérations dans l'objet Prototype:
La copie de code est la suivante:
var o = {x: 1, y: 2};
var a = object.create (o);
az = 3;
console.log (a); // objet {z = 3, x = 1, y = 2}
supprimer AX; // ne peut pas supprimer la propriété héritée
console.log (a); // objet {z = 3, x = 1, y = 2}
supprimer az; // peut supprimer ses propres propriétés
console.log (a); // objet {x = 1, y = 2}
Supprimer un .__ Proto __. X;
console.log (a); // objet {y = 2}
Si la propriété de l'objet Prototype est supprimée, tous les objets hérités de l'objet Prototype seront affectés.
Pour la valeur de retour de l'opération de suppression, JavaScript suit les règles suivantes:
1. Si l'opération de suppression est réussie, revenez vrai.
2. Si l'opération de suppression n'a aucun effet (par exemple, la propriété à supprimer n'existe pas), elle renverra également vrai.
3. Si la propriété que vous souhaitez supprimer a une propriété configurable de false, une erreur de type EERROR sera signalée en mode strict, et FALSE sera renvoyé en mode non stricte.
Si l'opérateur de suppression agit comme une propriété de l'objet global, alors en mode non stricte, l'objet global dans le code peut être omis:
La copie de code est la suivante:
this.c = 42;
supprimer c; // égal à supprimer ce.c;
Il convient de noter qu'en mode strict, la méthode d'écriture ci-dessus lancera une erreur de syntaxerror.