絮丶
2017-07-12 17:14
var mynum=new Array(65,90,88,98);
document.write("数组的长度是:"+ mynum.length );
得出的结果为4.我们看出是以1开始数的,并不是0开始。 难道还有个隐藏数?还是length就是1开始数的呢,那我输出 mynum[mynum.length];这样会不会输出最后一位呢?(不知道能不能输出。= =可能不允许这样写)
js是你的第一门编程语言吧
只有数组为空的时候,length才为0,mynum[mynum.length-1]表示该数组最后一个元素,索引值从0开始,length从1开始
额。。。长度是4,但数组的下标是从0开始计数的,也就是长度是4,下标分别是0,1,2,3.
长度的计算是从1开始。索引号是从0开始的。比如有三个房间的号码为0号,1号,2号。你说这有几个房间,有三间还是两间。当然是3间房了。0号1号2号不过是房间的地址罢了,(类似于数组的索引号,根据索引号找到该元素),房间的个数就相当于数组的长度length。
。。。不知道你是怎么理解的。。4仅仅代表数组里面的个数,里面有四个值那就是4,0开始是指索引,相当于是一个地址指针。mynum.length这个值根本不存在,当然输出undefined。
就是在数组没增加值是留出一个空位待写入,mynum[mynum.length]会输出undefined值。
果然,得出结论。每个数组最后都有一个空的,待写入的值。就是未定义的。但是他是存在且能被mynum.length识别到的存在。可以这么理解吧
JavaScript进阶篇
468060 学习 · 21891 问题
相似问题