你们好,美丽的程序员! 今天我一直在做一个名为“棋盘”的小测验,但遇到了一个奇怪的情况。 但我的代码是垂直输出结果,但我需要水平输出结果,这样我就可以重复这个过程几次,用它制作一块板。这是我的代码:
let value = 8;
for (i = 1; i <= value ; i++) {
if ( i % 2 == 0 ) {
let x = i;
console.log(x);
} else {
let y = " ";
console.log(y);
}
}
上面的代码输出
2
4
6
8
我怎样才能让这些结果像这样水平显示:
2 4 6 8
这样我以后就可以在新的一行中重复这个过程? 我已经思考这个问题有一段时间了,但是……我可能太笨了,无法弄清楚这一点?
我想我必须在这个函数中再次嵌套这个 if 函数才能实现这一点,但不知道如何...... 预先感谢!
在代码开头添加一个空字符串,将结果附加到其中,并将其记录到控制台,如下所示:
var output = '';
let value = 8;
for (i = 1; i <= value ; i++) {
if (i % 2 == 0) {
output += i;
}
output += ' ';
}
console.log(output);
console.log 将始终在控制台中显示在新行上。我会将每个结果添加到一个数组中,然后将数组转换为字符串。然后控制台记录一次。
let value = 8;
// create empty array
const results = [];
for (let i = 1; i <= value; i++) {
if ( i % 2 == 0 ) {
let x = i;
// rather than console logging, add to empty array
results.push(x);
} else {
let y = " ";
results.push(y);
}
}
// convert array to string, seperated by spaces
const str = results.join(" ");
console.log(str)