数组在我的应用程序中(它是代码编辑器),如下所示:
var ar =[
{
keyword:[
{
values:['if','else','endif'],
style:'vcm-keyword'
}
]
},
{
operator:[
{
values:['==','!=','<','>' ],
style:'vcm-operator'
}
]
}
];
此数组传递给jQuery插件
现在我想循环遍历数组并获取值。
这里有趣的是数组是动态的。这意味着,我不知道[在上面的数组keyword
和operator
]中的键的类型将在数组中。
我们正在开发编辑器以支持所有类型的编程语言。所以我可能无法知道上面数组中的键的类型。
那么,如果数组的键名是未知的,如何遍历数组。
字面意思,这就是我想在插件中做的事情:
var values = arr[0].[+key+].values,
style = arr[0].[+key+].style;
备注:我不知道我的假设是对还是错。感谢任何建议/备选方案。
答案 0 :(得分:4)
您可以使用for..in
构造来循环对象(或数组)中的键,例如:
for(var key in obj) {
console.log(key, obj[key]);
}
您可能还想调用hasOwnProperty()以获取更好的衡量标准,例如:
for(var key in obj) {
if (obj.hasOwnProperty(key)) console.log(key, obj[key]);
}
这会阻止你迭代原型链等。
答案 1 :(得分:1)
答案 2 :(得分:1)
也许你可以使用
foreach
语句?