也许我刚刚盯着这个屏幕看了太长时间,但我似乎无法弄清楚为什么这个for循环挂了?
var not = '3,7';
var nots = not.split(',');
alert(nots.length);
for (var i = 0; i <= nots.length; i++) {
nots[i] = parseInt(nots[i], 10);
}
document.write(nots);
感谢您的帮助。
干杯
查理
答案 0 :(得分:5)
在循环中,您正在测试i <= nots.length
。您应该测试i < nots.length
。
当长度为5时,索引为0,1,2,3,4的元素。因此,当i
达到5时,不再有元素。但是你设置nots[i]
(元素5)并将数组扩展一个。因此,每当i
等于nots.length
时循环执行,您将数组扩展一个,因此循环“仅再运行一次”只是为了进一步扩展数组。