[英]get value of object inside array inside object with javascript
如果我有這個:
{
"data": [{
"id": "4831",
"name": "Rui Vasco Martins",
"nickname": "rvgmartins",
"money_start": "10200",
"balance": "8000"
}]
}
如何獲取data->id
, data->name
等的值?
數據是多重的。 這意味着它是一個對象數組。 沒有data-> id,只有data [n] - > id這樣的東西。 在這種情況下,您可能需要所有可能的ID,並且可以使用傳統的循環或其他方法來完成。
var i =0;
var total = object.data.length;
var ids = [];
for(; i < total; i++) {
ids.push( data[ i ].id );
}
console.log(ids);
如果你確定只有1個數據輸入並且永遠是,你可以直接前往object.data[ 0 ].id
!
請注意,“object”是包含JSON的變量:)
下次,這里有一點提示: http : //jsonlint.com/
希望有所幫助!
您的對象包含一個數組,因此您需要使用正確的索引來進一步深入研究該對象; 你的id和名字碰巧在第一個數組中,所以我們使用obj.data[0]
。
var obj = {"data":[{"id":"4831","name":"Rui Vasco Martins","nickname":"rvgmartins","money_start":"10200","balance":"8000","profit":"5010","nreload":"1","deal_id":"4813","created_at":"2015-05-27 12:54:33","updated_at":"2015-07-21 22:31:47"}],"status":200,"config":{"method":"GET","transformRequest":[null],"transformResponse":[null],"url":"services/dashboard","headers":{"Accept":"application/json, text/pla`in, */*"}},"statusText":"OK"}
您可以使用點或方括號表示法來進一步標識對象屬性,這里是點符號:
var data_id = obj.data[0].id; // "4831"
var data_name = obj.data[0].name; // "Rui Vasco Martins"
這是方括號表示法:
var data_id = obj.data[0]['id']; // "4831"
var data_name = obj.data[0]['name']; // "Rui Vasco Martins"
在data
有一個數組,你可以這樣做:
var myJson = { "data": [{ "id": "4831", "name": "Rui Vasco Martins", "nickname": "rvgmartins", "money_start": "10200", "balance": "8000", "profit": "5010", "nreload": "1", "deal_id": "4813", "created_at": "2015-05-27 12:54:33", "updated_at": "2015-07-21 22:31:47" }], "status": 200, "config": { "method": "GET", "transformRequest": [null], "transformResponse": [null], "url": "services/dashboard", "headers": { "Accept": "application/json, text/plain, */*" } }, "statusText": "OK" } document.write('id: ' + myJson.data[0].id + '</br>name: ' + myJson.data[0].name);
首先,讓我們了解你的問題。 要注意的事項:
foo
data->id
這樣的東西。 如果您有一個名為data
的對象,並且它有一個名為id
的成員,那么您將其引用為data.id
name
在數組中。 數組的元素由索引引用,該索引從0開始,因此,您的數組標注為data
是具有單個元素的數組,這是第0個元素 因此,您可以使用foo.data[0].id
獲取id
,並且可以將name
為foo.data[0].name
。 但是,如本身所示,沒有任何東西強迫你的數組只有一個元素。 如果有更多的元素,你需要能夠以某種方式決定你感興趣的元素的id
和name
。此外,你的數組不會被迫擁有元素。
每當看到這樣的JSON時,數組都包含在[]
括號內,對象被括在{}
括號內。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.