Heim > Web-Frontend > js-Tutorial > Kann ich Variablen als Objekteigenschaftsnamen in JavaScript verwenden?

Kann ich Variablen als Objekteigenschaftsnamen in JavaScript verwenden?

Susan Sarandon
Freigeben: 2024-12-25 10:05:11
Original
659 Leute haben es durchsucht

Can I Use Variables as Object Property Names in JavaScript?

So definieren Sie Objekteigenschaftennamen in JavaScript dynamisch

JavaScript-Objektliterale eignen sich zum Definieren einer Sammlung von Schlüssel-Wert-Paaren, bei denen es sich um Schlüssel handelt repräsentieren Eigenschaftsnamen und Werte repräsentieren Eigenschaftswerte. Es stellt sich jedoch häufig die Frage: Können wir eine Variable als Schlüssel in einem Objektliteral verwenden?

Die Antwort auf diese Frage hängt von der JavaScript-Version ab. In ES5 und früheren Versionen funktioniert die direkte Verwendung einer Variablen als Schlüssel in einem Objektliteral nicht. Zum Beispiel:

var thetop = 'top';
something.stop().animate({ thetop: 10 }, 10); // Doesn't work
Nach dem Login kopieren

Dies liegt daran, dass Objekteigenschaftennamen in ES5 in doppelte oder einfache Anführungszeichen eingeschlossen werden müssen.

Lösung für ES5 und früher

Um eine Variable als Schlüssel in ES5 zu verwenden, müssen Sie ein Objektliteral erstellen und den Eigenschaftswert manuell zuweisen, indem Sie den Variablennamen als Eigenschaft verwenden Schlüssel:

var aniArgs = {};
aniArgs[thetop] = 10; // Assign value to property using variable name as key
something.stop().animate(aniArgs, 10); // Pass the object literal to the animate method
Nach dem Login kopieren

ES6 Berechnete Eigenschaftsnamen

ES6 führt das Konzept von ComputedPropertyName ein, das die Verwendung von Variablen und Ausdrücken als Eigenschaftsnamen innerhalb von Objektliteralen ermöglicht. Diese Syntax sieht so aus:

const obj = { [variableOrExpression]: value };
Nach dem Login kopieren

Mit dieser Syntax können Sie Eigenschaftsnamen mithilfe von Variablen dynamisch definieren, zum Beispiel:

var thetop = 'top';
const obj = { [thetop]: 10 };
console.log(obj.top); // Prints 10
Nach dem Login kopieren

Diese Syntax wird in modernen Browsern unterstützt und kann die vereinfachen Prozess der dynamischen Definition von Objekteigenschaftsnamen.

Das obige ist der detaillierte Inhalt vonKann ich Variablen als Objekteigenschaftsnamen in JavaScript verwenden?. 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