我是专业 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/