我正在创建一个井字游戏来玩 Javascript 中的 OO 代码,或者我应该说,伪面向对象。而且我很难理解对象的表示方式,在这种情况下,每个网格单元都是一个对象。您如何从单击单元格到告诉单元格对象在此处放置标记?
这是我的html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="en" xml:lang="en" dir="ltr">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<script type="text/javascript" src="scripts/tic-tac-toe.js"></script>
<link rel="stylesheet" type="text/css" href="css/style.css" />
</head>
<body>
<div id="grid"></div>
</body>
</html>
这是未完成的 javascript 页面:
var Grid = function() {
var cells = [];
// Todo: Finish
const WINNING_COMBINATIONS = new Array();
this.setup = function() {
for (var i = 0; i < 3; i++) {
cells.push(new Array());
for (var j = 0; j < 3; j++) {
var new_cell = new Cell();
cells[i].push(new_cell);
}
}
var grid_div = document.getElementById("grid");
var output = '';
for (var i = 0; i < cells.length; i++) {
for (var j = 0; j < cells.length; j++) {
output += cells[i].placeCell();
}
output += "<br />";
}
grid_div.innerHTML = output;
}
}
还有一个单元类,它有一个标记属性、一个输出属性(用于显示的内容)和一个 setMark 方法。因此,如果我单击由输出属性创建的单元格,我将如何引用被单击的单元格?
提前致谢。