1.JS的数组本身就是动态的:
var a=new Array();
a[0]=1;
2.JS的数组元素不要求类型相同(如Hash表):var a=new Array();
a[0]=1;
a[1]=new Array();
a[1][0]=1;
a[1][1]="fdasfd";

解决方案 »

  1.   

    可是如果我定义
       var x = new Array(new Array(),new Array());
    然后我赋值.
       x[0][0] = "fsfs"
    没有任何问题,
    但是如果改成:
       var index   = 0 
       x[index][0] = "ffasd"
    就会出现错误...该如何解决???
      

  2.   

    可以的,你 IE几?<script>
     var x = new Array(new Array(),new Array());
     var index1 = 0 
     x[index1][0] = "ffasd"
      x[index1+1][0] = "ok"
     alert(x[index1][0])
     alert(x[1][0])
     ///index是关键字
    </script>
      

  3.   

    补充一下,上面所说的有误....
    是这样:
    var x = new Array(new Array(),new Array());
    x[0][0] = "fdsaf"
    x[1][0] = "fdafs"//前面两句没有什么问题..
    x[2][0] = "fdsfas"//这句就出现了错误.....
    这是为什么??难道这么样定义就只能是2个单位的???
      

  4.   

    var x = new Array(new Array(),new Array());
    x[0][0] = "fdsaf"
    x[1][0] = "fdafs"//前面两句没有什么问题..
    x[2][0] = "fdsfas"//这句就出现了错误.....
    这是为什么??难道这么样定义就只能是2个单位的???----------
    var x = new Array(new Array(),new Array());
    //构造出有两个元素的数组,两个元素都为数组
    x[0][0] = "fdsaf"
    //将X数组的第一个元素(也是一个数组)的第一个元素赋值x[1][0] = "fdafs"
    //将X数组的第二个元素(也是一个数组)的第一个元素赋值x[2][0] = "fdafs"
    //将X数组的第三个元素(目前还是null)的第一个元素赋值
    由于x[2]是null值(空值无法取方法或属性),而x[2][0]相当于x[2].0,所以会报NULL错误
      

  5.   

    var x = new Array(new Array(),new Array());
    x[0][0] = "fdsaf"
    x[1][0] = "fdafs"//前面两句没有什么问题..
    x[2][0] = "fdsfas"//这句就出现了错误.....你只定义了两个数组成员,x[0], x[1], 可以写x[0][0],x[0][1],x[1][0],x[1][1];
    但你没有定义 x[2] 这个数组啊,你要是这么定义就可以了
    var x = new Array(new Array(),new Array(),new Araay());
      

  6.   

    程序应该改成如下:var x = new Array(new Array(),new Array());
    x[0][0] = "fdsaf"
    x[1][0] = "fdafs"
    x[2]=new Array();         //加上这一句
    x[2][0] = "fdsfas"
      

  7.   

    var x = new Array(new Array(),new Array());--------------
    这一句话不是定义一个二维数组
    而是定义一个有两个元素的数组
    -----JS里没有直接的二维数组,多维数组用"以数组作元素的数组"来实现
      

  8.   

    var x = new Array(new Array(),new Array());
    定义了2X2的多维数组,
    x[2][0] = "fdsfas"中你的下标已经超过了最大维数
      

  9.   

    <script language="JavaScript">
    <!--
    var a=[]
    a[0]=[]
    a[0][0]=[]
    a[0][0][0]="hello"
    //-->
    </script>
      

  10.   

    var x = new Array(new Array(),new Array(),new Array());