javascript - 如何为二维数组中的元素提供唯一 ID?

标签 javascript arrays canvas 2d

我是专业 javascript 的新手,我遇到过需要以编程方式为二维数组中的每个元素提供唯一 ID 的情况。我之前问过这个问题,但我犯了一个错误,没有指定数组的结构,并收到了适合一维数组的答案。我的数组结构如下,如果知道如何为数组中的每个元素创建唯一 ID 会很棒:

 var startRow = Math.floor(scroll.x / alpha.width);
                   var startCol = Math.floor(scroll.y / alpha.height);
                   var rowCount = startRow + Math.floor(canvas.width / alpha.width) + 2;
                   var colCount = startCol + Math.floor(canvas.height / alpha.height) + 2;

                   rowCount = ((startRow + rowCount) > grid.width) ? grid.width : rowCount;
                   colCount = ((startCol + colCount) > grid.height) ? grid.height : colCount;


                   for (var row = startRow; row < rowCount; row++) {
                       for (var col = startCol; col < colCount; col++) {
                           var tilePositionX = alpha.width * row - 25;
                           var tilePositionY = alpha.height * col + 45;

非常感谢

此外,这是我之前收到的回复:JavaScript array id loop

最佳答案

就像您上一个问题所说的那样,您为什么不直接引用索引 - 它是完全独一无二的。二维数组将具有 [i][j] 索引,不能被多个项目占用。

var startRow = 0;
var startCol = 0;
var rowCount = 10;
var colCount = 5;
var someArray = [];

for (var row = startRow; row < rowCount; row++) {
   someArray[row] = [];
   for (var col = startCol; col < colCount; col++) {
       someArray[row][col] = row + ' ' + col;
   }
}

关于javascript - 如何为二维数组中的元素提供唯一 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9061837/

相关文章:

java - 以螺旋顺序打印二维数组

java - 如何在java中克隆一个多维数组?

php - 基于共同的列值将两个数组组合成一个数组

javascript - 我可以用自己的图像重新绘制 Canvas 图像吗?

javascript - 将点击功能添加到动态生成的div jquery

c# - 是否可以使用 C# 和 JavaScript 创建 SOAP API

javascript - 在 Canvas 中模拟封面时得到丑陋的图像

javascript - 尝试将 base64 图像加载到 Canvas 中

javascript - 使用生成器在 AngularJS 中使用 ng-repeat 进行迭代无法按预期工作

javascript - 在 HTML 端从 Javascript 渲染项目时传递正确的信息