永发信息网

js数组,为什么非数字索引的数组时数组的长度为0,非要指定一个数字下标的数组,才显示正确?

答案:1  悬赏:0  手机版
解决时间 2021-11-29 03:34
js数组,为什么非数字索引的数组时数组的长度为0,非要指定一个数字下标的数组,才显示正确?
最佳答案
js数组只支持数字索引,非数字索引指的是对象的属性了。跟你解释一下,这其中的差别,js的数组可以看做是特殊的对象(object),对象的属性有两种表示方法
如var a=Object();
1.a.myattr="lee";
2.a["myattr"]="lee";
1和2是等价的
不过楼主给的两条例子还是比较有探讨性的,先说
var a=new Array();
a['a1']=1;
a['a2']=2;
a.length //输出0
你没有给数组的元素赋值,所以a数组的长度也没有被创建出来,此时a.length自然是0.
var a=new Array();
a['a1']=1;
a['a2']=2;
a[2]=3;
你最后给数组元素a[2]赋值了,此时js会给数组a创建一个长度为3的空间,并在第三个元素中赋以3,但是元素1和元素2都没有赋值,所以此时a[0]和a[1]是没有值的,不信用可以alert一下
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
昨天我一个高三的朋友搞聚会我喝了点酒被两个
现在汽车个个月出新款,越来越好看都不知道怎
刚买的喷瓶用来喷水护肤用的 需要用开水洗一
小石榴能吃吗
谢谢你爸爸作文400字
点点在线网络会所地址在什么地方,我要处理点
还有什么盎然
辣炒毛蛤蜊的家常做法大全怎么做好
有人有bts北欧行和夏威夷行吗???
面试你为什么要当辅警
12.96除以7.2怎么算
关中匪事中的李墩子的原型是谁
请从分子的角度分析并解释下列现象:(1)1滴
大桥石化的油如何?求大神告知,谢谢
奶盖粉制作成奶盖的方法
推荐资讯
在中国打黑是什么下场?
#C和bD是不是一回事啊
三十万至四十万都有哪些车
卵泡达到26MMX21MM,内膜厚度约11MM
外径190内孔160毫米的圆管没米多少公斤
GTA5线上模式怎么买死亡尾流的那个摩托车?
如图为试验后A.B两种状态的细胞结构,请分析
java 老师用write(byte[]b)方法写的让我改成w
到底学什么专业好
象山县的地理环境
草书字典剑字
哈北站到利民开发区师大南路1号坐几路公交车
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?