给出以下数组:
var list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
和这些for循环:
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
document.getElementById("someID").innerHTML =
}
}
如何在具有以下格式的'textarea'中打印它们:
1 2 3
4 5 6
7 8 9
答案 0 :(得分:1)
如果它不必是for循环,你也可以使用map
:
var list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]],
someId = document.getElementById( 'someID' );
someId.innerHTML = '<pre>' + list.map(function (row) {
return row.join(' ');
}).join('<br>') + '</pre>';
&#13;
<div id="someID"></div>
&#13;
答案 1 :(得分:0)
构造要在内部循环中输出的字符串,并在外部循环之后使元素显示该字符串。
答案 2 :(得分:0)
像这样迭代每个想法:
添加<div id="someID"></div>
然后使用list.length和list [i] .length而不是硬编码3,然后执行:
var list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
var temp = "";
for (i = 0; i < list.length; i++) {
for (j = 0; j < list[i].length; j++) {
temp+=list[i][j] + " ";
}
temp+="<br>";
}
document.getElementById("someID").innerHTML = temp;
使用JSFiddle:http://jsfiddle.net/0k1tf5wh/
希望这会有所帮助!!
答案 3 :(得分:0)
所以也许像......
var list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
var html = '';
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
html += list[i][j] + " ";
}
html += '<br />';
}
document.getElementById("content").innerHTML = html;
&#13;
<div id="content">
</div>
&#13;
答案 4 :(得分:0)
要在div中显示它,您需要将每行包装在div中,因为HTML处理空格的方式:
请参阅:JSFiddle
var list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
var html = '';
for (i = 0; i < list.length; i++) {
html += list[i].join(' ');
}
document.getElementById('someID').innerHTML = html;
答案 5 :(得分:0)
有很多方法可以做到这一点。
console.log
会在大多数浏览器上为每次通话打印一行。
如果您正在使用可以访问IO的环境(即:NodeJS),则可以使用换行符('\n'
)打印到文件。
在HTML中,您可以使用<br>
标记,段落(<p>
),也可以将每一行放在div
中。例如,使用<br>
,您可以这样做:
var list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
for (i = 0; i < list.length; i++) {
document.getElementById("someID").innerHTML += list[i].join(" ") + "<br>";
}
请记住,外部数组的每个元素本身都是一个数组,因此您可以使用join
类型中的Array
方法将它们打印为一个元素。