Javascript 中 Array和Object的关系

Javascript中, Array 也是Object, 但有的人可能会误认为,形如a['key'] 的访问是Array的功能,其实不是。

如下例中,Array 赋值后,其length属性仍然为0,因为数据并没有被放到数组的位置中,而是被放到了Array的原形对象Object中。

var a = new Array();
a['one'] = 1;
a['two'] = 2;
a['three'] = 3;

alert(a.length);


另一个要点:

javascript实例化对象时,可以用形如{key:value}的方式来制造对象。其中key可以是直接量也可以是字符串,下例中,a1和a2内容完全等同。

要注意的是a1或a2的var1并不会被换为'pm'.

var var1 = 'pm';
var a1 = {var1:'test is ok',var2:'here'};
alert(a1.var1);
var a2 = {var1:'test is ok','var2':'here'};
alert(a2.var1);




posted @ 2011-11-07 21:49  hongweigg  阅读(21)  评论(0)    收藏  举报