JavaScript嵌套While循环问题:内层循环仅执行一次的解决方法
嵌套while循环内层仅执行一次的问题解决
问题出在变量j的初始化位置——你把j声明在了外层循环外面,第一次外层循环执行时,内层循环会把j递增到4,之后每次外层循环再执行时,j已经是4了,j < 4的条件不成立,所以内层循环再也不会运行。
修正方法很简单,把j的初始化移到外层循环内部,让每次外层循环启动时都重置j为1:
let i = 1; while (i < 5) { console.log('outer', i); let j = 1; // 把j的声明移到这里,每次外层循环重新初始化 while (j < 4) { console.log('inner', j); j++; } i++; }
这样修改后,每一轮外层循环都会重新创建并初始化j,内层循环就能正常执行3次,配合外层循环的4次,就能得到你预期的输出。
内容的提问来源于stack exchange,提问作者Waheedullah Saraabi
相关产品推荐
相关产品推荐

