V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yantianqi
V2EX  ›  程序员

javascript 数组用[]不可以声明关联数组,但是可以存放关联数组?

  •  1
     
  •   yantianqi · 2016-10-18 16:03:24 +08:00 · 2193 次点击
    这是一个创建于 2963 天前的主题,其中的信息可能已经有所发展或是发生改变。
    var a = ["name","age","sex"];
    var b = ["lisi",18,"man"];
    var arr = new Array();
    for(var i = 0; i < a.length; i++) {
    arr[a[i]] = b[i];
    }
    console.log(arr);
    3 条回复    2016-10-18 22:58:50 +08:00
    prefere
        1
    prefere  
       2016-10-18 16:18:53 +08:00
    Array 是个对象吧, alert(arr)
    wssgcg1213
        2
    wssgcg1213  
       2016-10-18 16:41:30 +08:00
    数组的本质是对象,它的原型链:[] -> Array.prototype -> Object.prototype
    ianva
        3
    ianva  
       2016-10-18 22:58:50 +08:00
    对象也能作为数组用,所以对象可以当关联数组也可以当数组用
    比如:
    var a = {};
    Array.prototype.push.call( a,11);
    console.log( a.length ) // 你会发现会有了 length 属性并为 1
    a 就成了一个类数组
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5961 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 02:23 · PVG 10:23 · LAX 18:23 · JFK 21:23
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.