多维数组 (Jscript)

更新:2007 年 11 月

可以在 JScript 中创建多维类型化数组。多维数组使用多个索引来访问数据。当脚本声明数组时,它设定每个索引的范围。多维数组与嵌套的数组类似,但嵌套的数组中每个子数组可以具有不同的长度。有关更多信息,请参见嵌套数组

讨论

一维数组的数据类型由后面带一对方括号 ([]) 的数据类型名称指定。用同一方法也可以指定多维数组的数据类型,但要在括号内使用逗号 (,)。数组的维数等于逗号的个数加 1。下面的示例阐释了定义一维数组和多维数组之间的区别。

// Define a one-dimensional array of integers. No commas are used.
var oneDim : int[];
// Define a three-dimensional array of integers.
// Two commas are used to produce a three dimensional array.
var threeDim : int[,,];

在下面的示例中,使用二维字符数组来存储 Tic-Tac-Toe(“零和叉”棋盘游戏)棋盘的状态。

// Declare a variable to store two-dimensional game board.
var gameboard : char[,];
// Create a three-by-three array.
gameboard = new char[3,3];
// Initialize the board.
for(var i=0; i<3; i++)
   for(var j=0; j<3; j++)
      gameboard[i,j] = " ";
// Simulate a game. 'X' goes first.
gameboard[1,1] = "X"; // center
gameboard[0,0] = "O"; // upper-left
gameboard[1,0] = "X"; // center-left
gameboard[2,2] = "O"; // lower-right
gameboard[1,2] = "X"; // center-right, 'X" wins!
// Display the board.
var str : String;
for(var i=0; i<3; i++) {
   str = "";
   for(var j=0; j<3; j++) {
      if(j!=0) str += "|";
      str += gameboard[i,j];
   }
   if(i!=0)
      print("-+-+-");
   print(str);
}

该程序的输出为:

O| | 
-+-+-
X|X|X
-+-+-
 | |O

可以使用类型为 Object 的多维类型化数组来存储任何类型的数据。

请参见

概念

数组数据

嵌套数组

其他资源

JScript 数组