我正在研究一段代码,该代码可以打印出数组中对象的内容。我已经通过打印出对象的每个项目来使其工作了,但是我想知道是否可以使用以下方法进行操作:

for(var property in array){
}


这是我当前正在使用的代码的副本:

for(var i=0;i<app.members.length;i++){
            output.innerHTML += "<div class='member'><p><b>Id: </b>" + app.members[i].id + "</p><p><b>User: </b>" + app.members[i].user + "</p>" +
            "<p><b>Name: </b>" + app.members[i].name + "</p><p><b>Email: </b>" + app.members[i].email +
            "</p><p><b>Age: </b>" + app.members[i].age + "</p></div>";
        };


这是for尝试中的副本:

for(var property in app.members){
            output.innerHTML += ("<p><b>" + property + ":</b> " + app.members[property] + "</p>");
        };


我遇到的第二个问题是它返回的是对象而不是所述对象的属性。

最佳答案

for in用于迭代属性,所以我想您可以这样做:

for(var i=0; i < app.members.length; i++) {
    for (var prop in app.members[i]) {
        output.innerHTML += ("<p><b>" + prop + ":</b> " + app.members[i][prop] + "</p>");
    }
}

关于javascript - 对于对象数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26509976/

10-12 13:06
查看更多