更好的解决方案:使用 Javascript 的原生Array.from()
并将 HTMLCollection 对象转换为数组,之后您可以使用标准数组函数。
var t = document.getElementById('mytab1');
if(t) {
Array.from(t.rows).forEach((tr, row_ind) => {
Array.from(tr.cells).forEach((cell, col_ind) => {
console.log('Value at row/col [' + row_ind + ',' + col_ind + '] = ' + cell.textContent);
});
});
}
您也可以参考tr.rowIndex
andcell.colIndex
而不是使用row_ind
and col_ind
。
与前 2 个最高投票答案相比,我更喜欢这种方法,因为它不会使您的代码与全局变量i
、j
、row
和col
混淆,因此它提供了干净的module化代码,不会产生任何副作用(或引发 lint / 编译器警告) ...没有其他库(例如jquery)。
如果您需要它在旧版本(ES2015 之前)的 Javascript 中运行,则Array.from
可以使用 polyfill。