我正在通过ajax javascript对返回json的页面(ASP)进行调用然后我会用它去选择值
我返回的json是这种类型的
{
"options": {
"1": "All locations",
"2": "Egypt",
"3": "El Alamein",
"4": "Marsa matrouh",
"5": "Sharm el sheikh "
}
}
或
{
"options": {
"1": "All locations",
"2": "Abu dhabi",
"3": "Dubai"
}
}
我不知道长度和包含的元素然后我会做一个循环,允许我提取值,然后插入值并标记
我在看网络,但显示的例子总是带有要回忆的字段名称,我无法了解不知道的长度
有人能告诉我这个循环json
var obj = {"options": {"1": "All locations", "2": "Egypt", "3": "El Alamein", "4": "Marsa matrouh", "5": "Sharm el sheikh "}}
for(var item in obj.options) {
console.log(obj.options[item]);
}
对于字典的迭代,您可以使用以下方法:
var dict = obj.options;
Object.keys(dict).forEach(function(key) {
console.log(key +': '+ dict[key]);
});
只知道你可以简单地使用的长度:
Object.keys(dict).length;
我认为在这里你可以找到更多的答案:如何循环或枚举JavaScript对象?
使用for in
循环
var obj = {"options": {"1": "All locations", "2": "Egypt", "3": "El Alamein", "4": "Marsa matrouh", "5": "Sharm el sheikh "}};
var ul = document.querySelector('ul');
for (var index in obj.options) {
var li = document.createElement('li')
ul.appendChild(li);
li.innerHTML = index + ": " + obj.options[index];
}
<ul ></ul>
使用for
循环太容易了
var obj = {"options": {"1": "All locations", "2": "Egypt", "3": "El Alamein", "4": "Marsa matrouh", "5": "Sharm el sheikh "}};
for(key in obj.options) {
console.log(key, obj.options[key]);
}