Próbuję utworzyć obiekt JavaScript Para kluczowych w następujący sposób:

var p={'revEv':[{'EventsId':rand, 
        if(Ext.getCmp('Val_'+id).getValue()!='E')
        'Status':Ext.getCmp('Val_'+id).getValue(),
        'core':Ext.fly('coreVal_'+id).dom.innerHTML,
        'transactionType':{'transactionTypeId':Ext.fly('oppVal_'+id).dom.innerHTML,'description':Ext.fly("oppDesc_"+id).dom.innerHTML},
        'timing':Ext.getCmp('quarter_'+id).getValue()},]}

Jak widać powyżej, dla konkretnego wpisu "Status" - muszę utworzyć / wkłada klucz tylko wtedy, gdy dany warunek jest spełniony.
Jaki jest elegancki sposób na zrobienie tego w JavaScript?

0
IUnknown 12 sierpień 2014, 14:42

2 odpowiedzi

Najlepsza odpowiedź

Zainicjuj wszystko inne, a następnie ustaw status w instrukcji IF:

var p={'revEv':[{'EventsId':rand, 
    'core':Ext.fly('coreVal_'+id).dom.innerHTML,
    'transactionType':{'transactionTypeId':Ext.fly('oppVal_'+id).dom.innerHTML,'description':Ext.fly("oppDesc_"+id).dom.innerHTML},
    'timing':Ext.getCmp('quarter_'+id).getValue()},]}

if (Ext.getCmp('Val_'+id).getValue()!='E') {
    p.revEv[0].Status = Ext.getCmp('Val_'+id).getValue(),
}
1
Dennis 12 sierpień 2014, 10:44

Możesz po prostu zrobić

var p = {};
if(condition) p.key = value;
0
markusthoemmes 12 sierpień 2014, 10:44