Heim > Web-Frontend > js-Tutorial > Wie überprüfe ich das Vorhandensein einer Eigenschaft mithilfe eines variablen Eigenschaftsnamens in JavaScript-Objekten?

Wie überprüfe ich das Vorhandensein einer Eigenschaft mithilfe eines variablen Eigenschaftsnamens in JavaScript-Objekten?

Barbara Streisand
Freigeben: 2024-11-01 11:07:02
Original
248 Leute haben es durchsucht

How to Check for Property Existence Using a Variable Property Name in JavaScript Objects?

So prüfen Sie effektiv das Vorhandensein von Objekteigenschaften mithilfe einer Eigenschaftsnamenvariablen

Bei der Arbeit mit JavaScript-Objekten ist es wichtig zu bestimmen, ob eine bestimmte Eigenschaft vorhanden ist . Was aber, wenn Sie eine Variable verwenden müssen, um den Zieleigenschaftsnamen zu speichern?

Im bereitgestellten Beispiel:

<code class="js">var myObj;
myObj.prop = "exists";
var myProp = "p"+"r"+"o"+"p";

if(myObj.myProp){
    alert("yes, i have that property");
};</code>
Nach dem Login kopieren

Der Code versucht, das Vorhandensein einer Eigenschaft mit dem Namen „ zu überprüfen. myprop‘, das nicht existiert. Dies liegt daran, dass JavaScript den Ausdruck als „myObj.myprop“ statt als „myObj.prop“ auswertet.

Um diese Logik erfolgreich zu implementieren, können Sie mehrere Ansätze verwenden:

Verwenden von hasOwnProperty

<code class="js">var myProp = 'prop';
if(myObj.hasOwnProperty(myProp)){
    alert("yes, i have that property");
}</code>
Nach dem Login kopieren

hasOwnProperty überprüft, ob das Objekt eine bestimmte Eigenschaft besitzt, mit Ausnahme geerbter Eigenschaften.

Verwendung im Operator (ES5)

<code class="js">var myProp = 'prop';
if(myProp in myObj){
    alert("yes, i have that property");
}</code>
Nach dem Login kopieren

in-Operator untersucht die aufzählbaren Eigenschaften eines Objekts, einschließlich eigener und geerbter Eigenschaften.

Verwendung von eckigen Klammern (ES6)

<code class="js">if('prop' in myObj){
    alert("yes, i have that property");
}</code>
Nach dem Login kopieren

In ES6 eckige Klammern kann austauschbar mit dem in-Operator zur Überprüfung der Eigenschaftsexistenz verwendet werden.

Das obige ist der detaillierte Inhalt vonWie überprüfe ich das Vorhandensein einer Eigenschaft mithilfe eines variablen Eigenschaftsnamens in JavaScript-Objekten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage