无法使用Array.length计算

时间:2018-09-13 19:09:05

标签: javascript arrays

我尝试按时间更改盒子的颜色。
我想用一个计数器计算下一种颜色,并用我拥有的颜色数对其取模。
使用正常的Number可以正常工作,但是如果我使用Array.lenght,我会得到NaN作为结果。

box = document.getElementById("box");
k = 0;
colors = ["purple", "green", "red", "orange", "yellow", "blue"];

setInterval(function() {
  console.log(colors.length); // shows 6
  box.style.backgroundColor = colors[k];
  k++;
  k = k % colors.lenght;
  // k %= 6; works fine.
  console.log(k); // shows NaN
}, 1000);
#box {
  width: 100px;
  height: 100px;
}
<div id="box"></div>

感谢您的帮助。

3 个答案:

答案 0 :(得分:1)

远射,但这仅仅是拼写错误吗? k = k % colors.lenght; 应该: k = k % colors.length;

...一直在我身边

答案 1 :(得分:0)

您有colors.lenght没有colors.length

答案 2 :(得分:0)

您的代码中有拼写错误。k = k % colors.lenght;应该是k = k % colors.length;