4 回答

TA貢獻1784條經驗 獲得超7個贊
使用字符串的解決方案
:
let html = "";
for (let i = 1; i < 11; i++) {
for (let j = 1; j < 11; j++) {
html += String(i * j).padStart(3, " ") + " ";
}
html += "<br>";
}
document.getElementById("output").innerHTML = html.replace(/ /g, " ");
#output {
font-family: monospace;
}
<output id="output"></output>

TA貢獻1895條經驗 獲得超7個贊
用
<pre> 預格式化文本 元素
document.write("<pre>")
for (i = 1; i < 11; i++) {
for (j = 1; j < 11; j++) {
document.write(String(i * j).padStart(4, ' '))
}
document.write("<br>")
}
document.write("</pre>")

TA貢獻1847條經驗 獲得超11個贊
此解決方案適用于 和 html 選項卡實體pre	
document.write("<pre>")
for (let i = 1; i < 11; i++) {
for (let j = 1; j < 11; j++)
document.write(i * j + "	")
document.write("<br>")
}
document.write("</pre>")
你可以用css控制空間:tab-size
* {
-moz-tab-size: 3em;
-o-tab-size: 3em;
tab-size: 3em;
}

TA貢獻1886條經驗 獲得超2個贊
您的代碼中存在幾個問題:
您應該使用
<預>
(預格式化文本)標記您應該在 和 索引前面添加 一個,以將其本地范圍縮小到
let
i
j
for
在循環中,如果將索引條件定義為(因為您正在計算從1到10的數字)而不是
for
<= 10
< 11
你需要一個前綴和一個后綴(為了在我的示例中構建前綴,我使用了一個函數)
document.write('<pre>');
for (let i = 1; i <= 10; i++) {
for (let j = 1; j <= 10; j++) {
let number = i * j;
let prefix = get_prefix(number);
let suffix = ' ';
document.write(prefix + number + suffix)
}
document.write('<br>')
}
document.write('</pre>');
function get_prefix(number) {
let prefix = '';
if (number < 100) {
prefix += ' ';
}
if (number < 10) {
prefix += ' ';
}
return prefix;
}
添加回答
舉報