使用javascript列出for循环中的所有项目

使用javascript列出for循环中的所有项目,javascript,for-loop,Javascript,For Loop,我正在寻找一种从下面的循环中列出每个名字的方法。目前,它在每个firstname停止循环,最后一个停止是Jack,并且只显示它。我希望它能像约翰、简、乔那样展示所有人 var person = [{firstName:"John"}, {firstName:"Jane"}, {firstName:"Jack"}]; for (var i = 0; i < person.length; i++) { document.getElementById("demo").innerHTML = p

我正在寻找一种从下面的循环中列出每个名字的方法。目前,它在每个firstname停止循环,最后一个停止是Jack,并且只显示它。我希望它能像约翰、简、乔那样展示所有人

var person = [{firstName:"John"}, {firstName:"Jane"}, {firstName:"Jack"}];

for (var i = 0; i < person.length; i++) {
document.getElementById("demo").innerHTML = person[i].firstName;
}
var person=[{firstName:John},{firstName:Jane},{firstName:Jack}];
对于(变量i=0;i

有人能告诉我该怎么做吗?

问题是您正在覆盖
innerHTML
值,而需要使用'+'将值附加到
innerHTML
属性:

var person = [{firstName:"John"}, {firstName:"Jane"}, {firstName:"Jack"}];
var demo = document.getElementById("demo");

for (var i = 0, len = person.length; i < len; i++) {
  demo.innerHTML += person[i].firstName + ' ';
}
var person=[{firstName:John},{firstName:Jane},{firstName:Jack}];
var demo=document.getElementById(“demo”);
for(变量i=0,len=person.length;i

看看这个。我添加了一些修改,使代码更具性能。

请查看此代码:

var person = [{firstName:"John"}, {firstName:"Jane"}, {firstName:"Jack"}],
html = "";

for (var i = 0; i < person.length; i++) {
 html += person[i].firstName;
}

document.getElementById("demo").innerHTML = html;
var person=[{firstName:“John”},{firstName:“Jane”},{firstName:“Jack”},
html=“”;
对于(变量i=0;i
您每次都使用innerHTML进行覆盖,因为您没有使用“+=”。我喜欢事先创建一个字符串并将其设置为“无”。然后,您可以添加所有内容,只需调用innerHTML一次


希望这有帮助

这里有另一种使用更具风格的方式

“严格使用”;
var people=[{firstName:“约翰”},{firstName:“简”},{firstName:“杰克”}];
var node=document.getElementById('demo');
node.innerHTML=people.map(函数(person){
返回person.firstName;
})。加入(‘,’)
#演示{
填充:1em;
背景色:#def;
边框:1px纯色灰色
}