[英]javaScript for/loop scope
我写了这段代码,对数组的值求和。 有人可以解释一下为什么我在最后一个console.log语句中变得不确定的原因。
var array = [2,3,4,5,6,7];
var sum = 0;
for(var i = 0; i < array.length; i++) {
sum = array[i] + sum;
}
console.log(sum);
console.log(array[i]);
那是因为循环执行了i++
,现在i
等于array.length
。
当您尝试访问以前未定义的对象属性时,JavaScript返回undefined
的原始值。
但是,由于JavaScript数组基于0
,因此仅在位置0
和array.length - 1
之间填充数组。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.