我是一位新手程序员,正在学习 JavaScript。我已经完成了 Codecademy 的课程,并正在阅读《JavaScript 高级程序设计》。我花费了很长时间终于写出了一些代码,但它无法运行!我不确定我的方法是否正确,但我知道我想使用循环来跟踪通过打印 # 号网格的进度。
编写一个程序,创建一个表示 8x8 网格的字符串,使用换行符分隔每行。 在网格的每个位置上,要么是一个空格,要么是一个“#”字符。 这些字符应该形成一个象棋棋盘。 将此字符串传递给 console.log 应该显示如下内容:
# # # #
# # # #
# # # #
# # # #
# # # #
# # # #
下面是我的代码:
var chessBoard = "";
var size = 8;
for (var lineCounter = 1; lineCounter < size; lineCounter++) {
if (lineCounter%2 === 0) { /
/if lineCounter is an even number
for (var charCounter = 1; charCounter < size; charCounter++) {
var evenOdd = (charCounter%2 === 0);
switch (evenOdd) {
case true:
(chessBoard += "#");
break;
case false:
(chessBoard += " ");
break;
}
}
}
else { //if lineCounter is an odd number
for (var charCounter = 1; charCounter < size; charCounter++) {
var evenOdd = (charCounter%2 === 0);
switch (evenOdd) {
case true:
(chessBoard += " ");
break;
case false:
(chessBoard += "#");
break;
}
}
}
chessBoard += "\n";
}
console.log(chessBoard);
当前程序的输出如下所示:
# # # #
# # #
# # # #
# # #
# # # #
# # #
# # # #
经过一些尝试,我已经学到了很多东西,但现在我发现了一个错误——明显只有7x7的网格而不是我想要的8x8。我怀疑这与我的for循环中使用"<"有关,但不确定是否有更好的方法来解决这个问题,而不仅仅是添加一个额外的数字。
\n
而不是/n
。 - Rick Hitchcock