簡體   English   中英

如何訪問 JSON 對象數組的第一個元素?

[英]How to access first element of JSON object array?

我預計 mandrill_events 只包含一個對象。 我如何訪問它的event-property

var req = { mandrill_events: '[{"event":"inbound","ts":1426249238}]' }
var req = { mandrill_events: '[{"event":"inbound","ts":1426249238}]' }

console.log(Object.keys(req)[0]);

創建任何對象數組( req ),然后簡單地執行Object.keys(req)[0]來選擇對象數組中的第一個鍵。

要回答您的名義問題,您使用[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];

事件屬性似乎首先是字符串,您必須將其解析為 json :

 var req = { mandrill_events: '[{"event":"inbound","ts":1426249238}]' };
 var event = JSON.parse(req.mandrill_events);
 var ts =  event[0].ts

'[{"event":"inbound","ts":1426249238}]'是一個字符串,你不能訪問那里的任何屬性。 您必須使用JSON.parse()將其解析為一個對象,然后像處理普通對象一樣處理它

我將用一個一般的例子來解釋這一點:

var obj = { name: "John", age: 30, city: "New York" };
var result = obj[Object.keys(obj)[0]];

結果變量的值為“John”

用 Javascript 解析后,試試這個:

mandrill_events[0].event

假設吳丹的內容mandrill_events被物體(未字符串),也可以使用shift()函數:

var req = { mandrill_events: [{"event":"inbound","ts":1426249238}] };
var event-property = req.mandrill_events.shift().event;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM