我认为mandrill_events只包含一个对象。如何访问其event-property
?
var req = { mandrill_events: '[{"event":"inbound","ts":1426249238}]' }
答案 0 :(得分:15)
var req = { mandrill_events: '[{"event":"inbound","ts":1426249238}]' }
console.log(Object.keys(req)[0]);
创建任何Object数组(req
),然后只需执行Object.keys(req)[0]
以选择Object数组中的第一个键。
答案 1 :(得分:9)
要回答你的名义问题,你可以使用[0]
来访问第一个元素,但是因为mandrill_events
包含的字符串不是数组,所以mandrill_events[0]
会让你获得第一个元素性格,'['。
因此要么将您的来源更正为:
var req = { mandrill_events: [{"event":"inbound","ts":1426249238}] };
然后req.mandrill_events[0]
,或者如果你坚持使用它是一个字符串,解析字符串包含的JSON:
var req = { mandrill_events: '[{"event":"inbound","ts":1426249238}]' };
var mandrill_events = JSON.parse(req.mandrill_events);
var result = mandrill_events[0];
答案 2 :(得分:2)
事件属性似乎是字符串首先你必须将它解析为json:
var req = { mandrill_events: '[{"event":"inbound","ts":1426249238}]' };
var event = JSON.parse(req.mandrill_events);
var ts = event[0].ts
答案 3 :(得分:1)
'[{"event":"inbound","ts":1426249238}]'
是一个字符串,您无法访问那里的任何属性。您必须使用JSON.parse()
将其解析为对象,然后像普通对象一样处理它
答案 4 :(得分:1)
我会用一个一般的例子来解释这个:
var obj = { name: "John", age: 30, city: "New York" };
var result = obj[Object.keys(obj)[0]];
结果变量的值为“John”
答案 5 :(得分:0)
用Javascript解析后,试试这个:
mandrill_events[0].event
答案 6 :(得分:0)
假设shift()
的内容是一个对象(不是字符串),则还可以使用var req = { mandrill_events: [{"event":"inbound","ts":1426249238}] };
var event-property = req.mandrill_events.shift().event;
函数:
git revert --continue