键作为变量导航 JSON 对象
key as variable navigating jsonp object
我希望我的标题有点正确,因为我不确定如何命名我正在尝试做的事情......
"modifiers":{"agility":{"type":"attribute","displayname":"agi","value":46}}
是我从这里获得的 JSON 回调的一部分。我正在尝试记录/访问不同modifiers
的value
如果我使用,它可以工作:
console.log(item1.modifiers.agility.value); /*item1 being item_list[0]*/
但是,如果不知道其他调用中modifiers
的内容(可能是strength
或wisdom
或两者兼而有之),该怎么办? 如何访问它们?
我得到的最接近的是这个:
for (var x in item1.modifiers){
console.log(x);
console.log(item1.modifiers.x.value);
}
x
正确地记录为 agility
但它在语句中无效以记录value
有没有办法在这样的"调用"中放置变量? 如果没有,我该如何解决这个问题?
Javascript 对象只是哈希,可以这样访问:
item1.modifiers[x].value
应该工作
解释:
JavaScript 中的任何对象都只是一个字典/哈希:
var x = { a: 1, b: 2, c: 3 };
x.a # = 1;
x['a'] # = 1;
因此,在您的情况下,您可以将整个事情重写为:
item1['modifiers'][x]['value']
相关文章:
- jQuery匹配JSON对象的部分文本
- 如何在Javascript中将JSon对象转换为数组
- 我可以在json对象中添加一个函数吗
- 使用JS将数组转换为json对象
- 如何为json对象中的段发送array[]
- 将JSON对象传递给angular指令
- 更改JSON对象的结构
- 访问JSON对象内部的数组元素
- 在ejs-partial中对JSON对象进行迭代
- 遍历 JSON 对象并检查 URL 是否以某个值结尾
- 访问嵌套JSON对象的键,其中键是动态的
- json对象中缺少对象循环
- 发送json对象或使用express路由呈现视图
- 在play2框架中向json对象添加下拉列表项
- 元素名称上带有短划线 (-) 字符的 Json 对象
- autocomplete不接受源的json对象
- 如何在javascript中创建动态json对象
- 在使用客户端脚本时拾取JSON对象
- 如何通过json对象数组为嵌套对象赋值
- 构造JSON对象