虽然它在小数据上运行良好。我需要以这种形式循环访问JSON:
var current_value = 2;
json_data = {"2":"first information","3":"Second informaton","4":"Third information"}
我想要做的是获取对应于current_value为2的json_data中的值 问题是我在运行此循环的任何时候都会一直" :
for(x in json_data){
if(x === current_value){
extracted = json_data[current_value];
}
}
答案 0 :(得分:2)
JavaScript属性名称是字符串。 2
是号码。 ===
不进行类型转换。 "2" !== 2
。
您应该将current_value
设置为"2"
而不是2
。
虽然循环毫无意义。
更明智的做法是:
var extracted;
if (current_value in json_data) {
extracted = json_data[current_value];
}
......甚至只是跳过if
语句。如果财产不存在,extracted
将为undefined
。