hasOwnProperty en JavaScript
-
Vérification de
hasOwnProperty
sur les objets en JavaScript -
Vérification de
hasOwnProperty
sur les objets d’une classe
Nous voyons souvent un dilemme concernant la convention in
et le hasOwnProperty
, mais les deux fonctionnent différemment dans un cas précis. Le concept principal est in
fonctionne pour les objets qui ont hérité des propriétés et les résultats sont true
, tandis que hasOwnProperty
renvoie true uniquement pour les propriétés qui ne sont pas héritées mais définies explicitement.
Ici, nous ne parlerons que de hasOwnProperty
en JavaScript.
Vérification de hasOwnProperty
sur les objets en JavaScript
En JavaScript, la structure pour vérifier si une propriété est définie est comme ceci - objectName.hasOwnProprty(property)
. Ici, un objet peut être un array
ou peut être une paire clé-valeur
. Vous pouvez vérifier le chemin dirigé.
Utilisation de hasOwnProperty
sur l’objet Array en JavaScript
Les tableaux sont indexés à partir de 0
et continuent jusqu’au dernier élément disponible. Ainsi, nous préférons les valeurs d’index pour appeler la propriété d’un objet tableau. L’exemple suivant donne une idée claire.
Extrait de code:
var myObj = ['Liza', 'Kary', 'Blake'];
console.log(myObj.hasOwnProperty(2));
console.log(myObj.hasOwnProperty(3));
Production :
Utilisation de hasOwnProperty
sur des objets de paires key-value
en JavaScript
À cet égard, nous considérerons un dictionnaire qui aura des valeurs clés (string
) et des propriétés (n’importe quel type de données). Allons-y pour l’exemple ci-dessous:
Extrait de code:
var myObj = {
pet : "penguine",
age : 5,
}
console.log(myObj.hasOwnProperty("age"));
console.log(myObj.hasOwnProperty("color"));
Production :
Comme vous pouvez le voir, l’objet myObj
n’a que deux clés - pet
et age
. Si nous appelons seulement ces deux propriétés par le hasOwnProperty
nous verrons la console résultante true
. Sinon, on a appelé une propriété aléatoire color
, qui se traduit par false
.
Vérification de hasOwnProperty
sur les objets d’une classe
JavaScript ES6 a une fonctionnalité supplémentaire de classe
, et l’utilisation de constructor
permet la définition de certains objets dynamiques. Alors qu’après avoir déclaré les objets, vous pouvez facilement y accéder en définissant votre valeur pour eux. La démonstration effacera l’explication de cette section. Aussi, pour toute valeur personnalisée, si la propriété existe dans le class constructor
, vous obtiendrez la réponse true
; sinon, false
.
Extrait de code:
class pet {
constructor(name, age) {
this.name = name;
this.age = age;
}
}
const pet1 = new pet('Izequel', 5);
console.log(pet1.hasOwnProperty('name'));
console.log(pet1.hasOwnProperty('color'));