我有一个对象数组。我循环数组对象,所以我得到存储在数组中的所有对象。现在我想单独获取任何对象的元素。
我尝试使用此代码来管理它,但在输出中我得到了对象的整个元素。
function loadPropertiesFromJson(propertiesArray)
{
$.each(propertiesArray, function(idx, obj){
$.each(obj, function(key, value){
console.log(key + ": " + value.key);
});
});
}
有没有办法单独获取对象的元素?
我的对象数组是这样的:
[
{"id":"aa","name":"bb","type":"cc"},
{"id":"ee","name":"rr","type":"ff"}
]
我希望获得id,name,....个性化并将主题存储到变量中。
有办法管理吗?
答案 0 :(得分:0)
您可以通过访问给定索引中的属性来实现此目的:
var propertiesArray= [{
"id": "aa",
"name": "bb",
"type": "cc"
},
{
"id": "ee",
"name": "rr",
"type": "ff"
}
];
console.log("ID: "+propertiesArray[0].id);
console.log("Name: "+propertiesArray[0].name);
console.log("-------------");
console.log("ID: "+propertiesArray[1].id);
console.log("Name: "+propertiesArray[1].name);

答案 1 :(得分:0)
我是否正确理解您想获得每个项目的价值。 所以只需在第二个循环结束时删除键:每个循环中的value.key:
function loadPropertiesFromJson(propertiesArray)
{
$.each(propertiesArray, function(idx, obj){
$.each(obj, function(key, value){
console.log(key + ": " + value);
});
});
}
单独返回所有值。
答案 2 :(得分:0)
您可以使用解决方案https://jsfiddle.net/k5sgn8xn/
var data = [
{"id":"aa","name":"bb","type":"cc"},
{"id":"ee","name":"rr","type":"ff"}
];
$.each(data, function(key){
$.each(data[key], function(k, v){
$('div:eq("' + key + '")').attr(k, v);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
test1
</div>
<div>
test2
</div>
这有助于您将属性添加到 N 数量的容器中。
答案 3 :(得分:0)
感谢。 @Mathias Falci的解决方案适合我。
有适用的代码:
$.each(propertiesArray, function(idx, obj){
console.log(propertiesArray[idx].id);
});