Die Punkt- und die Klammerschreibweise werden beide für den Zugriff auf die Objekteigenschaften in JavaScript verwendet. Die Punktschreibweise wird meist verwendet, da sie leichter zu lesen und zu verstehen ist. Warum sollten wir also die Klammerschreibweise verwenden, und worin besteht der Unterschied zwischen beiden? []
ermöglicht den Zugriff auf Objekteigenschaften mit Hilfe von Variablen, da es den Ausdruck innerhalb der eckigen Klammern in eine Zeichenkette umwandelt.
const person = {
name: 'John',
age: 30
};
//dot notation
const nameDot = person.name;
console.log(nameDot);
// 'John'
const nameBracket = person['name'];
console.log(nameBracket);
// 'John'
Betrachten wir nun ein Beispiel für eine Variable:
const person = {
name: 'John',
age: 30
};
const myName = 'name';
console.log(person[myName]);
// 'John'
Ein weiterer Vorteil ist, dass die Punktschreibweise nur alphanumerische Zeichen enthält (und _ und $). Wenn Sie also beispielsweise auf ein Objekt wie das folgende zugreifen möchten (das '-' enthält, müssen Sie die Klammerschreibweise dafür verwenden)
const person = {
'my-name' : 'John'
}
console.log(person['my-name']); // 'John'
// console.log(person.my-name); // Error