求助数组的循环显示

for (var i = 0; i < jsonboj.length; i++) {
     document.getElementById('success').innerHTML = jsonobj[i].commit.message + '<br>' + jsonobj[i].commit.author.name + '<br>' + jsonobj[i].commit.author.date;
}

为什么我如上面的写法,显示出的数据只有一条,并不是循环显示全部?

阅读 2.5k
2 个回答

我给你个建议:

可以先把你循环的值打印出来,看看是否有值。

再说:

你的每次循环都会覆盖上次的循环的赋值

document.getElementById('success').innerHTML

所以看到的是一个值

修改非常的简单, 加一个符号即可:

document.getElementById('success').innerHTML += jsonobj[i].commit.message + '<br>' + jsonobj[i].commit.author.name + '<br>' + jsonobj[i].commit.author.date;

// 注意等号左边加了个加号

var str = '';
for (var i = 0; i < jsonboj.length; i++) {

str  += jsonobj[i].commit.message + '<br>' + jsonobj[i].commit.author.name + '<br>' + jsonobj[i].commit.author.date;

}
document.getElementById('success').innerHTML = str;

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题