JavaScript中作为关联数组的对象

来源:互联网 发布:求圆面积的编程 编辑:程序博客网 时间:2024/05/17 07:46

我们已经见过用点运算符来存取一个对象属性,而数组更常用的存取属性运算符是[ ]。这样下面两个表达式值相等:

object.propertyobject["property"]
这两条语法之间最重要的区别是:前者的属性名是标识符,后者的属性名却是一个字符串。很快我们就会明白为什么后者如此重要。

当用数组的[ ]表示法来存取一个对象的属性时,属性名是用字符串表示的。字符串是JavaScript的一种数据类型,因此可以在程序运行的过程中操作并创建它们。而当使用点运算符来存取一个对象的属性时,属性名是用标识符表示的。而在JavaScript程序中,标识符只能被逐字输入,它们不是一种数据类型,因此程序不能对它们进行操作。这就降低了程序的操作能力。

例如可以用JavaScript编写如下的代码:

var addr=" ";for(i=0;i<4;i++){addr+=customer["address"+i]+'\n';}
这一代码读取了customer对象的属性address0、address1、address2和address3,并且将它们连接起来。

如果使用一个对象时采取的是这种形式,我们常常称它为关联数组。它是一个数据结构,允许动态地将任意数值和任意字符串关联在一起。

当将for/in循环与关联数组一起使用的时候,它真正的威力就清楚地显示出来了。

原创粉丝点击