我将此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
}
]
}
}
}
如果您始终知道这是列表中的第一个项目,则括号符号应正常工作。
result.metadata.data.s1[0][key1];
如果您不确定它的位置,那么[0]
将不会总是正确的,并且您必须迭代result.metadata.data.s1
数组中的所有项目才能找到它。
您上面的代码在列表中获得第二个项目,索引[1]
,其中的密钥不是"百合",它是" Mancy"。
这是Codepen演示