优雅javascript第2章练习3中的循环问题
这个问题来自上面的来源,其中我被要求制作一个棋盘。提供的解决方案使用相同的方法,除了y<尺寸和x<尺寸。但是为什么这种方式不起作用呢优雅javascript第2章练习3中的循环问题,javascript,Javascript,这个问题来自上面的来源,其中我被要求制作一个棋盘。提供的解决方案使用相同的方法,除了y
--由于
x
和y
值发生变化,因此for循环的条件应为您需要了解for
循环的工作原理。请在网站上阅读
第二个子句是一个条件,它在循环中每次都会被检查,包括在最开始的时候。如果为false,则退出循环。循环将继续,但它是真实的。在您的情况下,您希望保持循环,直到x
或y
达到电路板的大小(实际上,电路板的大小小于1,因为我们从0开始)。因此,以下是正确的:
for (var y = 0; y < size; y++) {
^^^^^^^^
然后循环将永远不会执行。它将以0的x
开始,然后检查它是否等于size
,而不是(0!==8
),因此退出循环,甚至不执行一次
var size = 8;
var chess = "";
for (var y = 0; y < size; y++){
for (var x = 0; x < size; x++){
if ((x + y) % 2 == 0)
chess += " ";
else
chess += "#";
}
chess += "\n";
}
console.log(chess);
for (var y = 0; y < size; y++) {
^^^^^^^^
for (var y = 0; y == size; y++){
^^^^^^^^^