我有以下代码:
let j = 0;
for(i = 0; i < board[0].length; i++)
{
j = i;
check_row(board[i], i, tiles);
i = j;
}
棋盘是一个数组,包含 5 个大小为 5 的数组:
[[0,1,2,3,4],[0,1,2,3,4],[0,1,2,3,4],[0,1,2,3,4],[0,1,2,3,4]]
Tiles 是一个大小为 25 的节点数组(如果相关的话)。
check_row(...) 函数当前仅包含 console.log("test")
如果我删除
i = j
那么 check_row 只会执行一次,但如果我保持 i = j,那么循环将正常工作并按预期调用 check_row() 5 次,每行一次。我不明白为什么传递迭代器会破坏循环。如果我传递 j 而不是 i 并删除 i = j,那么我会遇到同样的问题。
任何帮助将不胜感激!
你是否也在其他地方声明了 i ,这可能是在 for 循环开始时没有添加 let 的问题?
for(let i = 0; i < board[0].length; i++)
{
check_row(board[i], i, 1);
}