Heim >Web-Frontend >js-Tutorial >Wie legt man Schlüssel in JavaScript-Objekten dynamisch fest?

Wie legt man Schlüssel in JavaScript-Objekten dynamisch fest?

Susan Sarandon
Susan SarandonOriginal
2024-11-05 08:10:02921Durchsuche

How to Dynamically Set Keys in JavaScript Objects?

So erstellen Sie einen dynamischen Schlüssel für eine JavaScript-Objektvariable

Beim Versuch, einen dynamischen Schlüssel für ein JavaScript-Objekt zu erstellen, verwenden Sie diese Syntax

jsObj{ 'key' i} = 'example' 1;
wird nicht funktionieren. Der richtige Ansatz verwendet eckige Klammern:

<code class="js">jsObj['key' + i] = 'example' + 1;</code>

In JavaScript sind Arrays ein spezieller Objekttyp, mit dem Unterschied, dass sie eine Längeneigenschaft beibehalten, die die Anzahl der numerischen Eigenschaften (Indizes) plus eins widerspiegelt. Dieses besondere Verhalten wird von Standardobjekten nicht nachgeahmt, aber der eckige Klammeroperator funktioniert bei beiden Typen identisch.

Beim Festlegen einer Eigenschaft mit einem numerischen Schlüssel für eine Array-Instanz wird die Längeneigenschaft automatisch aktualisiert, um die widerzuspiegeln größter numerischer Schlüssel. Für ein einfaches Objekt findet jedoch keine solche Aktualisierung statt.

Es ist wichtig zu beachten, dass die Serialisierung einer Array-Instanz in JSON nur die numerisch benannten Eigenschaften umfasst, alle anderen ausgenommen.

In ES6 Sie können „Berechnete Eigenschaftsnamen“ für eine prägnantere Syntax verwenden:

<code class="js">var key = 'DYNAMIC_KEY',
    obj = {
        [key]: 'ES6!'
    };</code>

Das obige ist der detaillierte Inhalt vonWie legt man Schlüssel in JavaScript-Objekten dynamisch fest?. 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