无限输出数组元素

问题描述 投票:0回答:1

我试图无限地输出数组元素。我已经找到了另一种方法来做到这一点,但是你能帮助我理解为什么在数组的第一次迭代之后第一个元素没有在此代码中输出吗?

li = [1, 2, 3, 4, 5]
  for (i=0; i<li.length; i++) {           
    console.log(li[i])
    if (i+1 == li.length) { 
      i = 0 
}

预期输出: 1 2 3 4 5 1 2 3 4 5 ...

实际产量:

1 2 3 4 5 2 3 4 5 ...

(1 出现在第一个循环中)

javascript arrays for-loop infinite-loop
1个回答
0
投票

很好地使用了余数运算符...

let list = [1, 2, 3, 4, 5]

for ( let i=0, counter=0
    ; counter < 20
    ; counter++, i = ++i % list.length  // i = (i+1) % lenght
    )
  {           
  console.log(list[i])
  }

© www.soinside.com 2019 - 2024. All rights reserved.