我有一个可容纳警报和有关警报的信息的对象:
var alerts = {
1: { app: 'helloworld', message: 'message' },
2: { app: 'helloagain', message: 'another message' }
}
除此之外,我还有一个变量来表示有多少警报alertNo
。我的问题是,当我添加新警报时,是否可以将警报附加到alerts
对象上?
如何将警报作为记录而不是单个对象的属性存储在数组中?
var alerts = [
{num : 1, app:'helloworld',message:'message'},
{num : 2, app:'helloagain',message:'another message'}
]
然后添加一个,只需使用push
:
alerts.push({num : 3, app:'helloagain_again',message:'yet another message'});
此答案希望您知道要添加的警报的ID。好吧,如果您已经知道这一点,那么您只需遵循原始对象格式并执行:
alerts[3] = { app: 'hello3', message: 'message 3' }
。这样,您可以通过id访问消息:alerts[2] => { app: 'helloworld', message: 'message' }
。获取长度则刚:Object.keys(alerts).length
(该位是与阵列更容易)