Ich möchte ein Objekt erstellen, zu dem ein Element bedingt hinzugefügt wird. Der einfache Ansatz ist:
var a = {};
if (someCondition)
a.b = 5;
Jetzt würde ich gerne einen idiomatischeren Code schreiben. Ich versuche es:
a = {
b: (someCondition? 5 : undefined)
};
Aber jetzt, b
ist ein Mitglied von a
deren Wert ist undefined
. Dies ist nicht das gewünschte Ergebnis.
Gibt es eine praktische Lösung?
Update
Ich suche nach einer Lösung, die den allgemeinen Fall mit mehreren Mitgliedern behandeln kann.
a = {
b: (conditionB? 5 : undefined),
c: (conditionC? 5 : undefined),
d: (conditionD? 5 : undefined),
e: (conditionE? 5 : undefined),
f: (conditionF? 5 : undefined),
g: (conditionG? 5 : undefined),
};