Javascript 在表格中循环以存储单元格的位置
我有一个关于循环遍历数据表但不将数据存储在表中的问题;相反,我希望在表中存储某个数据段的位置 我现在使用的是一个pgm像素值表,该值定义为0表示黑色,255表示白色。我希望对这个表做的是循环遍历它,并将该像素的位置、行数和列数存储在一个数组中,但前提是该像素的值为255 我现在没有pgm表,所以我将提供这一个作为示例。 为了简单起见,您能帮我只记录显示值为15的像素的位置吗?非常感谢所有答案:)Javascript 在表格中循环以存储单元格的位置,javascript,for-loop,pgm,Javascript,For Loop,Pgm,我有一个关于循环遍历数据表但不将数据存储在表中的问题;相反,我希望在表中存储某个数据段的位置 我现在使用的是一个pgm像素值表,该值定义为0表示黑色,255表示白色。我希望对这个表做的是循环遍历它,并将该像素的位置、行数和列数存储在一个数组中,但前提是该像素的值为255 我现在没有pgm表,所以我将提供这一个作为示例。 为了简单起见,您能帮我只记录显示值为15的像素的位置吗?非常感谢所有答案:) 您可以这样做: var locs = [], row, col, pixel
您可以这样做:
var locs = [],
row,
col,
pixelData = ...,
nRows = ...,
nCols = ...;
for (row = 0; row < nRows; ++row) {
for (col = 0; col < nCols; ++col) {
if (pixelData[row][col] == 15) {
locs.push([row, col]);
}
}
}
// now the locs array has all [row,col] locations of pixels with value 15
最后,您应该期望locs
是一个由两个元素数组组成的数组,就好像它是用以下元素初始化的:
var locs = [
[1, 19], [1,20], [1,21], [1,22], [2, 19], [2,22], ...
];
所有的代码都可以用JavaScript写吗?谢谢。这看起来很棒。但是对于可变的pixelData,您会将其值声明为什么?@user2517142-这应该只是pgm像素数据;我发布的代码假设它是一个整数值数组数组。我假设您已经控制了pgm数据的读取,并且您只是询问有关收集索引的问题。如果没有,您从什么形式的数据开始?我们使用的是一个pgm文件,它是一个真实的黑白圆圈图片。一旦我们能够将像素值放入一个表中,我们将使用这个代码来找到图片中像素的“坐标”。最后,通过一些数学方程来计算这些坐标,以确定图像中圆的中心和半径。@user2517142-在我的代码中,
pixelData
将是像素值表。我非常感谢你。编辑为我澄清了这一点。希望你今天过得愉快。
var pixelData = [
[0, 0, 0, 0, 0, 0, 0, 0, 0, . . .],
[0, 3, 3, 3, 3, 0, 0, 7, 7, . . .],
. . .
];
var locs = [
[1, 19], [1,20], [1,21], [1,22], [2, 19], [2,22], ...
];