Hier ist mein wörtliches Objekt:
var obj = {key1: value1, key2: value2};
Wie kann ich ein Feld hinzufügen? key3
avec value3
zum Objekt?
Hier ist mein wörtliches Objekt:
var obj = {key1: value1, key2: value2};
Wie kann ich ein Feld hinzufügen? key3
avec value3
zum Objekt?
Wenn Sie mehrere anonyme Objektliterale innerhalb eines Objekts haben und ein weiteres Objekt mit Schlüssel/Wertpaaren hinzufügen möchten, gehen Sie wie folgt vor:
Firebug' das Objekt:
console.log(Comicbook);
zurück:
[Objekt { name="Spiderman", value="11"}, Objekt { name="Marsipulami", value="18"}, Object { name="Garfield", value="2"}]
Code:
if (typeof Comicbook[3]=='undefined') {
private_formArray[3] = new Object();
private_formArray[3]["name"] = "Peanuts";
private_formArray[3]["value"] = "12";
}
wird hinzufügen Object {name="Peanuts", value="12"}
zum Comicbuch-Objekt
Sie können ein neues Objekt erstellen, indem Sie die {[key]: value}
Syntax:
const foo = {
a: 'key',
b: 'value'
}
const bar = {
[foo.a]: foo.b
}
console.log(bar); // {key: 'value'}
console.log(bar.key); // value
const baz = {
['key2']: 'value2'
}
console.log(baz); // {key2: 'value2'}
console.log(baz.key2); // value2
Mit der bisherigen Syntax können Sie nun die Spread-Syntax verwenden {...foo, ...bar}
um ein neues Objekt hinzuzufügen, ohne den alten Wert zu verändern:
const foo = {a: 1, b: 2};
const bar = {...foo, ...{['c']: 3}};
console.log(bar); // {a: 1, b: 2, c: 3}
console.log(bar.c); // 3
Ein kurzer und eleganter Weg in der nächsten Javascript-Spezifikation (Kandidatenstufe 3) ist:
obj = { ... obj, ... { key3 : value3 } }
Eine ausführlichere Diskussion findet sich in Objektausbreitung vs. Object.assign und weiter Dr. Axel Rauschmayers Website .
Es funktioniert bereits in node.js seit Version 8.6.0.
Vivaldi, Chrome, Opera und Firefox in aktuellen Versionen kennen diese Funktion auch, aber Mirosoft bis heute nicht, weder im Internet Explorer noch in Edge.
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.