如何打印出人员对象中的所有人员?

例如,我希望我的输出是这样的。

约翰·多伊25

保罗·沃斯珀23

 var txt = "";
 var person = {
            p1: {fname:"John", lname:"Doe", age:25},
            p2: {fname:"Paul", lname:"Vosper", age:23}
           };
  var x;
  for (x in person)
  {
    txt += person[x] + " ";
  }
  document.getElementById("demo").innerHTML = txt;

最佳答案

您可以进行地图/连接:

var txt = Object.keys(person).map(function(k) {
  var p = person[k];

  return [p.fname, p.lname, p.age].join(' ');
}).join(' ');


在控制台中输出:

javascript - javascript使用for循环打印嵌套对象?-LMLPHP

如果要在它们之间使用换行元素(<br>),只需加入<br>

document.getElementById("demo").innerHTML = Object.keys(person)
                                            .map(combineAllProperties)
                                            .join('<br>');

function combineAllProperties(k) {
  var p = person[k];

  return [p.fname, p.lname, p.age].join(' ');
}

关于javascript - javascript使用for循环打印嵌套对象?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32173793/

10-09 23:21
查看更多