Tell me, please, how can I get the indexes (row number and column number) of the table cell if I have an element ( HTMLTableDataCellElement ) corresponding to this cell?

(For example, I hang up a click handler on the entire table, get a cell that was clicked through event.target and then I need to know the row and column number of this cell)

 document.querySelector('table').onclick = (event) => { let cell = event.target; let i = ??? let j = ??? } 
 <table> <tr> <td>0,0</td> <td>0,1</td> </tr> <tr> <td>1,0</td> <td>1,1</td> </tr> </table> 

1 answer 1

 document.querySelector('table').onclick = (event) => { let cell = event.target; if (cell.tagName.toLowerCase() != 'td') return; let i = cell.parentNode.rowIndex; let j = cell.cellIndex; /*let table = document.querySelector('table'); for (var m = 0; m < table.rows.length; m++) { for (var n = 0; n < table.rows[m].cells.length; n++) { if (table.rows[m].cells[n] == cell) { i = m; j = n; } } }*/ console.log(i, j); } 
 <table> <tr> <td>0,0</td> <td>0,1</td> </tr> <tr> <td>1,0</td> <td>1,1</td> </tr> </table>