我有以下JSON数据:
var raw = {"raw":[{"W4Jlp9HKx_MVImNZuJwPqA!!:dgIN_ZskRAf5OtpgZ7tYLQ!!":{"name":"Name1","uniqID":"W4Jlp9HKx_MVImNZuJwPqA!!:dgIN_ZskRAf5OtpgZ7tYLQ!!"},"uFzQkOcsEwmRDGlob11Qiw!!:ArYiisKagqjnqMGfbKP7Yw!!":{"name":"Name2","uniqID":"uFzQkOcsEwmRDGlob11Qiw!!:ArYiisKagqjnqMGfbKP7Yw!!"},"fWcL6bvhCvp1wO95-7K3LA!!:XNYxDArq9E_6u2yaDbST0A!!":{"name":"Name3","uniqID":"fWcL6bvhCvp1wO95-7K3LA!!:XNYxDArq9E_6u2yaDbST0A!!"}}]}
密钥是动态的,即第一个密钥“W4Jlp9HKx_MVImNZuJwPqA!!:dgIN_ZskRAf5OtpgZ7tYLQ!!”会随着我们对JSON URL进行的每个调用而更改。
我想解析JSON数据并将数据存储在Javascript变量中。
我尝试使用以下方法解析:
var arra = JSON.parse(raw);
尝试使用以下方式获取该值:
arra.raw[0].W4Jlp9HKx_MVImNZuJwPqA!!:dgIN_ZskRAf5OtpgZ7tYLQ!!.name
但是这并没有起到帮助作用,我无法获取其中的值。我也不确定为什么会发生这种情况。是因为键包含特殊字符吗?
如果有一种方法可以列出键,并使用键索引或类似的方式获取值,那将是很好的。例如:
arra.raw[0].key(0).name
我希望不需要提供密钥,因为它会随着每次调用而更改。即使没有使用密钥名称的工作解决方案也可以。
如果可能的话,我更喜欢用Javascript实现,如果不行,请随时告诉我可以用什么语言实现。
非常感谢!
--- 编辑 ---
在评论中已经给出了使用具有特殊字符的键获取值的答案,我必须使用[]符号来获取结果。非常感谢大家!!但是关于使用键位置获取结果的第二个问题,键名仍然保持开放状态。