Heim > Web-Frontend > js-Tutorial > Berechnete Eigenschaftsnamen in JavaScript: Wie definieren eckige Klammern Objekteigenschaften?

Berechnete Eigenschaftsnamen in JavaScript: Wie definieren eckige Klammern Objekteigenschaften?

Patricia Arquette
Freigeben: 2024-12-01 20:53:11
Original
471 Leute haben es durchsucht

Computed Property Names in JavaScript: How Do Square Brackets Define Object Properties?

Enthüllung berechneter Eigenschaftsnamen: Was steht in eckigen Klammern?

Im Bereich JavaScript, wo Objektliterale vorherrschen, ist ein neugieriger Es hat sich eine Syntax herausgebildet: eckige Klammern um Eigenschaftsnamen. Diese rätselhafte Notation, die als „berechnete Eigenschaftsnamen“ geschmückt ist, zierte kürzlich die Seiten der ES6-Spezifikationen.

Die im bereitgestellten Beispiel rätselhaft eingeführte Eigenschaft dist übt Kontrolle über ein inneres Objekt aus, dessen Dateieigenschaft a hostet eigenartiges syntaktisches Exemplar:

dist: {
    files: {
      [bpr + 'lib/Monster.min.js']: ['<%= concat.dist.dest %>']
    }
  }
}
Nach dem Login kopieren

Verwundert über diesen kryptischen Ausdruck tauchen wir tiefer in die rätselhafte Welt von ein berechnete Eigenschaftsnamen.

Entmystifizierung berechneter Eigenschaftsnamen

Wie MDN aufschlussreich verkündet: „Ab ECMAScript 2015 unterstützt die Objektinitialisierer-Syntax auch berechnete Eigenschaftsnamen. Das ermöglicht Ihnen um einen Ausdruck in Klammern [] zu setzen, der als Eigenschaft berechnet wird name.“

Im Wesentlichen geben uns diese eckigen Klammern die Möglichkeit, Eigenschaftsnamen basierend auf den Ergebnissen ausgewerteter Ausdrücke dynamisch zu generieren. Diese Fähigkeit erweist sich als unschätzbar wertvoll, wenn Objekteigenschaften erstellt werden, deren Namen nicht statisch bestimmt werden können.

Erläuterung der Syntax

Die Syntax berechneter Eigenschaftsnamen ist unkompliziert: Schließen Sie den bestimmenden Ausdruck ein der Eigenschaftsname in eckigen Klammern. Dieser Ausdruck kann von einfachen Variablenreferenzen bis hin zu komplexen Berechnungen reichen:

const propertyName = 'age';
const object = {
  [propertyName]: 25
};
Nach dem Login kopieren

In diesem Beispiel wird der Eigenschaftsname dynamisch durch den Wert der Variable propertyName generiert.

Empowering Dynamic Objektkonstruktion

Berechnete Eigenschaftsnamen ermöglichen die Erstellung dynamischer Objekte, bei denen Eigenschaftsnamen zur Laufzeit ermittelt werden. Diese Flexibilität ist besonders nützlich, wenn Datenstrukturen basierend auf externen Daten oder Benutzereingaben generiert werden:

const data = {
  firstName: 'John',
  lastName: 'Doe',
  [`${firstName} ${lastName}`]: 'John Doe'
};
Nach dem Login kopieren

Dieser Code erstellt dynamisch eine Eigenschaft unter Verwendung der Verkettung der Eigenschaften „firstName“ und „lastName“. Das resultierende Objekt verfügt über eine Eigenschaft mit dem Namen „John Doe“, was den Zugriff auf den vollständigen Namen erleichtert.

Zusammenfassung

Berechnete Eigenschaftsnamen, eingeführt mit ES6, Erweitern Sie die Objektkonstruktionsfähigkeiten von JavaScript, indem Sie die dynamische Generierung von Eigenschaftsnamen durch ausgewertete Ausdrücke ermöglichen. Diese Flexibilität eröffnet eine Vielzahl von Möglichkeiten zum Aufbau anspruchsvoller und ausdrucksstarker objektbasierter Datenstrukturen.

Das obige ist der detaillierte Inhalt vonBerechnete Eigenschaftsnamen in JavaScript: Wie definieren eckige Klammern Objekteigenschaften?. 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