麓鹿不迷路
2018-05-06 17:30
为什么不显示arr[7]呢?
var myarr = ['*','##','***','&&','****','##*'];
myarr[7]="**";
var length = myarr.length;
document.write("数组长度为:"+length+"<br>");
//将数组内容输出,完成达到的效果。
for(var i=0;i<length;i++) {
if(myarr[i][0]=="*")
document.write(myarr[i]+"<br>");
}
个人感觉是因为数组中不存在myarr[6]这个值,编译器可能读取到myarr[5]就终止了。js是可以在定长的数组后添加数据,从而改变数组的长度,但是数组可能需要连续定义吧,如果没有定义的数据都默认为undefine,那么数组的长度岂不是可以随意改变。
哦哦,应该可以这么理解,谢谢。那for(var i in myarr)是什么意思呢?是判断当i在myarry里面?那 i 是1、2、3..还是每个值呢?看后面用到myarr[i][0],那应该是把i看作了1、2、3..这样的数?
JavaScript进阶篇
468194 学习 · 21891 问题
相似问题