初探 js对象与数组

来源:互联网 发布:苹果cms免费模板 编辑:程序博客网 时间:2024/06/05 11:19

在js中,字符串下标的数组元素,不计入数组长度
以字符串下标形式添加到数组,实际是以属性形式添加到数组对象中的
当js数组中,如果字符串转换成整数类型,此时下标使用字符串或者整型 是等价的。如果下标是小数或者负数,则会转换成字符串。
在遍历数组时,会先遍历整型下标再遍历字符串下标。

arr[5]=5;arr[3.3]=3;arr["z"]="zz";arr["d"]="zzz";arr[-23455]="fa";arr["q"]="zzzz";arr[12345]="zuida";arr["12345"]="haha";for(var i in arr)    document.write(i+":'+arr[i]+<br>');

结果为

5:512345:haha3.3:3z:zzd:zzz-23455:faq:zzzzfa

如何为一个对象添加、修改或者删除属性和方法。在其他语言中,对象一旦生成,就不可更改了,要为一个对象添加修改成员必须要在对应的类中修改,并重新实例化,而且程序必须经过重新编译。JavaScript 中却非如此,它提供了灵活的机制来修改对象的行为,可以动态添加、修改、删除属性和方法。例如首先使用类Object来创建一个空对象user:
var user=new Object();
1.添加属性
这时user 对象没有任何属性和方法,显然没有任何用途。但可以为它动态的添加属性和方法,例如:
user.name=”ZDQ”;
user.age=21;
user.sex=”male”;

通过上述语句,user 对象便具有了三个属性:name、age和sex。

for(var i in user)    document.write(i+"\n");document.write(user.name);document.write(user["age"]);document.write(user["sex"]);

由以上代码可知,user已经或得三个属性,并且可以通过两种方法访问。
使用第二种方式还有一个额外的特点,就是可以使用非标识符字符串作为属性名称。
2.添加方法
添加方法的过程和属性类似:

user.alert=function(){document.write("my name is:"+this.name);}

这就为user 对象添加了一个方法”alert”,通过执行它,可以弹出一个对话框显示自己的名字介绍:
user.alert();
3.删除属性
删除一个属性的过程也很简单,就是将其置为undefined:
复制代码 代码示例:
user.name=undefined;
user.alert=undefined;

0 0
原创粉丝点击