通过Javascript(战舰游戏)向表中添加7x7基于网格的tabla数据标记

通过Javascript(战舰游戏)向表中添加7x7基于网格的tabla数据标记,javascript,Javascript,我正在尝试用Javascript创建一个简单的战舰游戏。游戏应采用7x7网格系统,战列舰应随机垂直和水平放置在网格上 下面是创建1x7网格(水平)的代码: /*宣布战场长度*/ var战场=7; /*计算并定位战列舰*/ 同时(战场

我正在尝试用Javascript创建一个简单的战舰游戏。游戏应采用7x7网格系统,战列舰应随机垂直和水平放置在网格上

下面是创建1x7网格(水平)的代码:

/*宣布战场长度*/
var战场=7;
/*计算并定位战列舰*/
同时(战场<7);
var battlegroundCalc=parseInt(战场)-2;
var randomLoc=Math.floor(Math.random()*battlegroundCalc);
变量位置1=随机位置;
var位置2=位置1+1;
var位置3=位置2+1;
控制台日志(位置1);
控制台日志(位置2);
控制台日志(位置3);
/*添加瓷砖以构建战场*/
对于(变量i=0;i
然而,我很难弄清楚如何创建多行,所以我得到了一个7x7的网格

如果有人能帮我,我将非常感激

提前感谢。

这里有一个方法:

var dimensionx = 7;
var grid = new Array(dimensionx);

var i, j, row, box;

// this is our table
var board = document.getElementById('tbody_id');

for (i = 0; i < grid.length; i++) {
    grid[i] = new Array(dimensionx);
    grid[i].fill('~'); //fill the grid with water
    row = document.createElement('tr');
    for (j = 0; j < grid[i].length; j++) {
        box = document.createElement('td');
        box.setAttribute('id', "" + i + j); //practical identification for cells
        row.appendChild(box);
    }
    board.appendChild(row);
}
var维度x=7;
var grid=新阵列(维数x);
变量i、j、行、框;
//这是我们的桌子
var board=document.getElementById('tbody_id');
对于(i=0;i
这里的区别是,我在开始使用之前创建了一个二维数组(我所做的就是在构建整个过程之前清除单元格)。之后,只需通过
grid[i][j]
引用所需的单元格,并通过其
id
引用表格单元格,设置属性的方式相同

这是一个例子。为方便起见,它还具有
update\u board()
功能


我本可以早点回答,但我太激动了,几乎用jsFiddle实现了整个游戏,直到我停下来。

对每一行重复同样的过程。根据我对战列舰的记忆,战舰可以水平和垂直放置。你需要考虑到这一点。
var dimensionx = 7;
var grid = new Array(dimensionx);

var i, j, row, box;

// this is our table
var board = document.getElementById('tbody_id');

for (i = 0; i < grid.length; i++) {
    grid[i] = new Array(dimensionx);
    grid[i].fill('~'); //fill the grid with water
    row = document.createElement('tr');
    for (j = 0; j < grid[i].length; j++) {
        box = document.createElement('td');
        box.setAttribute('id', "" + i + j); //practical identification for cells
        row.appendChild(box);
    }
    board.appendChild(row);
}