为什么这个阵列访问不起作用?

时间:2017-01-24 13:26:23

标签: javascript arrays

为什么这种方法访问不起作用?无论我们写入方法,点击都不会执行我们想要的。



<html>

<head>
  <script language="JavaScript">
    var Spiel1 = new TicTacToe();

    function TicTacToe() {
      var spielfeld = new Array[3][3];
      var zaehler = 0;
      this.Setzen = function(x, y) {
        document.getElementById("r0p0").innerHTML = "X";
      }
    }
  </script>
</head>

<body>
  <table>
    <tr>
      <td id="r0p0" onclick="Spiel1.Setzen(0,0)"></td>
    </tr>
  </table>
</body>

</html>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:2)

var spielfeld = new Array[3][3];中存在错误。如果删除此行,您的代码将有效。

如何定义多维数组?

var spielfeld = new Array();
spielfeld[0] = new Array();
spielfeld[1] = new Array();

另一种方法,如果你想在声明时初始化数组:

var a = new Array([1,2,3], [4,5,6], [7,8,9]);
var b = [[1,2,3], [4,5,6], [7,8,9]];

答案 1 :(得分:1)

只是这样做:

spielfeld = new Array(3);
for (var i = 0 ; i< 3; i++){
 spielfeld[i] =  new Array(3);
}

或只是

spielfeld = [[,,,],[,,,],[,,,]];

请注意,有3个逗号,因为此数组[,,]只有2个元素!!

因为那并不重要......