[英]Value substitution while accessing nested json object
這是我的json對象
{
"a1": {
"b1": {
"name": "Tim",
"status": "Completed"
}
"c1" {
"field1": "name",
"field2": "status"
}
}
我需要通過獲取c1內的字段鍵來訪問值Tim。 例如,我需要獲取a1.c1.field1的值,該值將給我提供值name1,然后我需要通過a1.b1。(a1.c1.field1的值)訪問值tim。做這個。 有人可以給出實現此目的的可能方法嗎?
您的JSON有點差了,因此在下面已更正。 這是一個如何在c1對象(在a1對象中)中檢索field1值的示例。
$(document).ready(function () {
var json = {
"a1":
{
"b1":
{
"name": "Tim",
"status": "Completed"
},
"c1":
{
"field1": "name",
"field2": "status"
}
}
};
console.log(json.a1.b1.name); // returns Tim
// or
console.log(json["a1"]["b1"]["name"]); // returns Tim
});
這是您要找的東西嗎?
您可以使用方括號進行訪問。 利用您提供的數據,
var data = {
"a1": {
"b1": {
"name": "Tim",
"status": "Completed"
},
"c1":{
"field1": "name",
"field2": "status"
}
}
};
您可以通過訪問來滿足您的要求。
data.a1.b1[data.a1.c1.field1]
一種明顯的方法是使用a1.c1.field1
括號表示法將a1.c1.field1
用作屬性訪問器。
var obj = {
"a1": {
"b1": {
"name": "Tim",
"status": "Completed"
},
"c1": {
"field1": "name",
"field2": "status"
}
}
};
console.log(obj.a1.c1.field1); // 'name'
console.log(obj.a1.b1[obj.a1.c1.field1]); // 'Tim'
或者更清晰地
var key = obj.a1.c1.field1;
var value = obj.a1.b1[key];
console.log(value); // 'Tim'
var a1 =
{
"b1":
{
"name": "Tim",
"status": "Completed"
},
"c1":
{
"field1": "name",
"field2": "status"
}
};
console.log(a1.b1[a1.c1.field1]);
還要修復json中的錯誤;)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.