开发者问题收集

定义 JavaScript 对象

2014-08-12
57

我正在尝试创建一个键值对 javascript 对象,如下所示:

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()},]}

如上所示,对于特定条目“状态” - 仅当满足特定条件时,我才需要创建/插入键。
在 javascript 中,有什么优雅的方法可以做到这一点?

2个回答

初始化其他所有内容,然后在 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(),
}
Dennis
2014-08-12

您只需执行

var p = {};
if(condition) p.key = value;
markusthoemmes
2014-08-12