我将此JSON数据存储在变量result
中,现在我想访问result.metadata.data.s1[1].lily
的值,但是密钥Lily
未知且可能在服务器端更改,所以我将密钥存储为变量,如var key1 = "Lily"
。如何使用此var key1
访问该值?
{
"metadata":{
"data":{
"s1":[
{
"Lily":"chat",
"time":10
},
{
"Mancy":"chat1",
"time":10
},
{
"John":"chat2",
"time":10
}
],
"s2":[
{
"Lan":"chat3",
"time":10
},
{
"Yoyo":"chat6",
"time":10
}
]
}
}
}
答案 0 :(得分:1)
如果您始终知道它是列表中的第一项,括号表示法应该可以正常工作。
result.metadata.data.s1[0][key1];
如果你不确定它在哪里,那么[0]
并不总是正确的,你将不得不遍历result.metadata.data.s1
数组中的所有项目才能找到它
上面的代码是获取列表中的第二项,索引为[1]
,而密钥不是“Lily”,而是“Mancy”。