var myarr = [];
    myarr['a'] = 'aa';
    myarr['b'] = 'bb';
    myarr['c'] = 'cc';
    alert(myarr.length);怎样取myarr的长度

解决方案 »

  1.   


    <script  lanuage="JScript"> 
    var myarr = [];
        myarr[0] = 'aa';
        myarr[1] = 'bb';
        myarr[2] = 'cc';
        alert(myarr.length);
    </script> 数组下标从零开始 
      

  2.   

    结帖了想起个问题,var myarr = [];
        myarr['a'] = 'aa';
        myarr['b'] = 'bb';
        myarr['c'] = 'cc';
        alert(myarr.length);怎样取myarr的长度啊
      

  3.   


    嗯 如果用字符索引 那就是关联数组 不能直接取length
    // IE下 用for in列举去计算\
    // FF下 提供了个全局属性
    <script type="text/javascript">
    <!--
        var myarr = [];
        myarr['a'] = 'aa';
        myarr['b'] = 'bb';
        myarr['c'] = 'cc';
        alert(myarr.__count__); // FF下看
    //-->
    </script>
      

  4.   

    alert(myarr.__count__);FF好用
    这是什么属性,把myarr当作什么对象了,不明白,请楼上详解
      

  5.   

    http://www.cnblogs.com/winter-cn/articles/1225693.html
      

  6.   

        myarr[3] = 'bb'; //这才是真正的数组元素操作
        myarr['c'] = 'cc'; //等同于 myarr.c='cc'; 相当于给myarr添加一个自定义的属性,该属性名称就是c。这不是数组元素操作,所以length与它无关
      

  7.   

    var myarr = [];
        myarr['a'] = 'aa';
        myarr['b'] = 'bb';
        myarr['c'] = 'cc';在ie下只能 for取长度了呗,没有别的办法了吗?
      

  8.   

    问题是你的这些操作var myarr = [];
        myarr['a'] = 'aa';
        myarr['b'] = 'bb';
        myarr['c'] = 'cc';根本就不是数组操作,你的思路错了。即使myarr不是数组,myarr['a'] = 'aa';这类的操作也是正确运行的,而且意义是一样的。比如
    var myarr=new Object();
    myarr['a']='aa';