Eu gostaria de criar um objeto com um membro adicionado condicionalmente. A abordagem simples é:
var a = {};
if (someCondition)
a.b = 5;
Agora, eu gostaria de escrever um código mais idiomático. Eu estou tentando:
a = {
b: (someCondition? 5 : undefined)
};
Mas agora, b
é um membro a
cujo valor é undefined
. Este não é o resultado desejado.
Existe uma solução útil?
Atualizar
Eu procuro uma solução que possa lidar com o caso geral com vários membros.
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),
};
a.b
, a recuperação a.b
retornaria de undefined
qualquer maneira.