Heim >Web-Frontend >js-Tutorial >Wie greife ich in JavaScript auf interne Objektwerte zu?

Wie greife ich in JavaScript auf interne Objektwerte zu?

DDD
DDDOriginal
2024-10-19 13:00:02996Durchsuche

How to Access Internal Object Values in JavaScript?

Zugriff auf interne Objektwerte in JavaScript

In JavaScript kann ein Objekt mithilfe seines internen Referenzmechanismus auf Werte in sich selbst verweisen. Allerdings kann es manchmal schwierig sein, die geeignete Syntax für den Zugriff auf interne Werte zu bestimmen.

Bedenken Sie den folgenden JavaScript-Code:

<code class="js">var obj = {
  key1: "it ",
  key2: key1 + " works!"
};
alert(obj.key2);</code>

Dieser Code versucht, basierend auf dem auf den Wert von „key2“ zuzugreifen Wert von „key1“. Es wird jedoch ein Fehler ausgegeben, da „key1“ nicht im Bereich von „key2“ definiert ist.

Es wurden verschiedene Methoden untersucht, um auf den Wert von „key1“ in „key2“ zuzugreifen, darunter:

<code class="js">this.key1
this[key1]
obj.key1
obj[key1]
this["key1"]
obj["key1"]</code>

Allerdings scheint keiner dieser Ansätze erfolgreich zu sein.

Lösung:

Um auf interne Werte innerhalb eines Objekts zuzugreifen, sollten Sie die Verwendung einer Funktion innerhalb des Objekts selbst in Betracht ziehen . Durch die Definition einer Funktion innerhalb von „obj“ können Sie mit „this“ auf interne Werte (wie „key1“) zugreifen. Zum Beispiel:

<code class="js">var obj = {
  key1: "it ",
  key2: function() {
    return this.key1 + " works!";
  }
};

alert(obj.key2());</code>

In diesem Beispiel hat die Funktion „key2“ über das Schlüsselwort „this“ Zugriff auf die Eigenschaft „key1“ in „obj“. Wenn 'obj.key2()' aufgerufen wird, gibt es die verkettete Zeichenfolge „it funktioniert!“ zurück.

Das obige ist der detaillierte Inhalt vonWie greife ich in JavaScript auf interne Objektwerte zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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