JS中对象与数组一些使用上的相同与不同

来源:互联网 发布:飞秋传文件端口号 编辑:程序博客网 时间:2024/06/05 18:12
var array = [];var object = {};<strong>1,数组有length属性,对象没有</strong>如果想获得对象的属性的长度,目前只知道通过遍历累加来获得<strong>2,引用对象中元素只能用[]</strong>,如a[2],引用对象中元素则有2种方法:var a = {            1 : "11",            hello : "hi hello"};alert("a.length " + a.length);a['1'] = "1";a[1] = a[1] + "2";a["hello"] = "Myhello";alert("a.1 = " + a[1]);alert("a['hello'] = " + a["hello"])对于属性名为字符串的属性,通过a[],也可以通过a.x来访问,比如上面的a.hello和a["hello"]是一样的,注意这里不能写成a[hello],这样写[]里的hello会被认为是一变量名;对于属性名为数字的属性,只能通过a[x]来访问,比如上面的a[1]或者a['1']是一样的,这里属性名加不加属性都没关系,但是写出a.1或者a."1"就会报错了。<strong>3, 属性是可以直接赋值的,而且是值拷贝</strong>var a = {};var b = { 1: "a", xx: "b"};a = b;delete b;//或者b = null;alert("a.x = " + a[1] + "; a.xx = " + a.xx)如以上例子,把对象b赋给a之后,删除b,这时还是可以访问a里面的值,说明这是值拷贝


0 0
原创粉丝点击