not in Operator in JavaScript
Objekte sind Schlüsselwerteigenschaften, die am häufigsten in JavaScript verwendet werden. Um zu prüfen, ob eine bestimmte Eigenschaft existiert oder nicht, bietet JavaScript mehrere Möglichkeiten. Der heutige Beitrag zeigt Ihnen, wie Sie in JavaScript überprüfen können, ob eine bestimmte Eigenschaft für ein Objekt vorhanden ist oder nicht.
Überprüfen Sie, ob die Eigenschaft in JavaScript vorhanden oder nicht vorhanden ist
Eigenschaften werden mit dem in einem Objekt gespeicherten Schlüsselwert gepaart. Ein Objekt
kann viele solcher Eigenschaften enthalten. Ob eine bestimmte Eigenschaft in JavaScript existiert oder nicht, wird durch den Operator id in object
oder Object.prototype.hasOwnProperty()
bestimmt.
Object.prototype.hasOwnProperty()
in JavaScript
Dies ist eine integrierte Methode, die von JavaScript bereitgestellt wird, um zu überprüfen, ob die angegebene Eigenschaft zu einem Objekt gehört oder nicht. Es iteriert das Objekt und gibt den booleschen Wert entsprechend dem Ergebnis zurück.
Syntax:
Object.prototype.hasOwnProperty(prop);
Diese Funktion nimmt prop
als Eingabe im string
-Format. Es ist ein obligatorischer Parameter. Diese Methode prüft nur, ob die angegebene Eigenschaft unabhängig vom Wert im Objekt vorhanden ist oder nicht. Es wird true
zurückgegeben, auch wenn der Eigenschaftswert null
oder undefined
ist. Diese Methode kann auch auf einem Array
aufgerufen werden, da das Array von einem Object abstammt. Weitere Informationen finden Sie in der Dokumentation der Methode hasOwnProperty()
.
const inputObject = {
id: 42,
name: 'John Doe'
};
console.log(inputObject.hasOwnProperty('name'));
if (!inputObject.hasOwnProperty('email')) {
inputObject.email = 'Johndoe@gmail.com';
}
console.log(inputObject);
Im obigen Codeblock haben wir zwei Eigenschaften eines Objekts id
und name
definiert. Wenn Sie inputObject.hasOwnProperty('name')
übergeben, wird geprüft, ob die name-Eigenschaft in inputObject
vorhanden ist oder nicht. Wenn Sie möchten, dass die gegenteilige Bedingung überprüft wird, fügen Sie !
hinzu. vor der Bedingung, und es wird die Prüfung negieren. Sie können beispielsweise eine neue Eigenschaft hinzufügen, wenn sie nicht innerhalb eines Objekts vorhanden ist. Die Ausgabe des obigen Codes ist unten zu sehen.
Ausgabe:
true
{
email: "Johndoe@gmail.com",
id: 42,
name: "John Doe"
}
Der in
-Operator in JavaScript
Es handelt sich um eine von JavaScript bereitgestellte integrierte Methode, die überprüft, ob ein Objekt oder eine Prototypkette die angegebene Eigenschaft besitzt. Es iteriert das Objekt und gibt den booleschen Wert entsprechend dem Ergebnis zurück.
Syntax:
prop in object
Diese Funktion nimmt prop
als Eingabe im string
-Format. Es ist ein obligatorischer Parameter. Diese Methode prüft nur, ob die angegebene Eigenschaft oder der Array-Index in Object
oder seiner prototype chain
existiert oder nicht. Diese Methode kann auch auf einem Array
aufgerufen werden, da das Array von einem Object abstammt. Weitere Informationen finden Sie in der Dokumentation der Methode in
-Operator.
Der Hauptunterschied zwischen den Operatoren hasOwnProperty
und in
besteht darin, dass der vorherige false zurückgibt, wenn die Eigenschaft innerhalb des Objekts vererbt oder nicht deklariert wurde. Im Vergleich dazu prüft der Operator in
nicht auf die angegebene Eigenschaft in der Prototypkette des Objekts. Zum Beispiel hat die Basisklasse Object
hasOwnProperty
als Funktion, also gibt hasOwnProperty
false
zurück, während der Operator in
true
zurückgibt.
const inputObject = {
id: 42,
name: 'John Doe'
};
console.log('name' in inputObject);
if (!('phone' in inputObject)) {
inputObject.phone = '7878787878';
}
console.log(inputObject);
Im obigen Codeblock haben wir zwei Eigenschaften eines Objekts id
und name
definiert. Wenn Sie 'name' in inputObject
übergeben, wird geprüft, ob die name-Eigenschaft in inputObject
existiert. Wenn Sie möchten, dass die gegenteilige Bedingung überprüft wird, fügen Sie !
hinzu. vor der Bedingung, negiert die Prüfung. Sie können beispielsweise eine neue Eigenschaft Telefon
hinzufügen, wenn sie nicht innerhalb eines Objekts vorhanden ist. Die Ausgabe des obigen Code-Snippets ist unten zu sehen.
Ausgabe:
true
{
id: 42,
name: "John Doe",
phone: "7878787878"
}
Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.
LinkedIn