set_options_list = function(selctelm, json){
$(selctelm).empty();
for ( key in json.array.F_02_0010){
val = json.array.F_02_0010[key]
console.log(key, typeof val, val[0], val[1]);
};
}
这是我的 json 数组:
json.array = {F_02_0010 : [{0 : "-------"},
{1:"20億円以上"},
{2:"14億円以上20億円未満"},
{3:"7億円以上14億円未満"},
{4:"7000万円以上7億円未満"},
{5:"7000万円未満"}],
F_02_0110 : [{0 : "-------"},
{1:"10億円以上"},
{2:"7億円以上10億円未満"},
{3:"4億円以上7億円未満"},
{4:"4000万円以上4億円未満"},
{5:"4000万円未満"}],
F_02_0210 :[{0 : "-------"},
{1:"10億円以上"},
{2:"7億円以上10億円未満"},
{3:"4億円以上7億円未満"},
{4:"5000万円以上4億円未満"},
{5:"5000万円未満"}],
"default": [{0 : "-------"}]
};
我在访问键和值时遇到未定义
。可能是什么原因?
这是console.log结果:
0 object ------- undefined
1 object undefined 20億円以上
2 object undefined undefined
3 object undefined undefined
4 object undefined undefined
5 object undefined undefined
我不确定为什么我在这里变得未定义?
最佳答案
你可能想要这样:
json.array = {F_02_0010 : ["-------",
"20億円以上",
"14億円以上20億円未満",
"7億円以上14億円未満",
"7000万円以上7億円未満",
"7000万円未満"],
F_02_0110 : ["-------",
"10億円以上",
"7億円以上10億円未満",
"4億円以上7億円未満",
"4000万円以上4億円未満",
"4000万円未満"],
F_02_0210 :["-------",
"10億円以上",
"7億円以上10億円未満",
"4億円以上7億円未満",
"5000万円以上4億円未満",
"5000万円未満"],
"default": ["-------"]
};
或者这样:
json.array = {F_02_0010 : {0 : "-------",
1:"20億円以上",
2:"14億円以上20億円未満",
3:"7億円以上14億円未満",
4:"7000万円以上7億円未満",
5:"7000万円未満"},
F_02_0110 : {0 : "-------",
1:"10億円以上",
2:"7億円以上10億円未満",
3:"4億円以上7億円未満",
4:"4000万円以上4億円未満",
5:"4000万円未満"},
F_02_0210 : {0 : "-------",
1:"10億円以上",
2:"7億円以上10億円未満",
3:"4億円以上7億円未満",
4:"5000万円以上4億円未満",
5:"5000万円未満"},
"default": {0 : "-------" }
};
关于javascript - 迭代 json 时输出不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22528445/