Criando uma tabela HTML a partir de um array em JavaScript

Suponha que temos uma tabela vazia:

html<table id="table"></table>

Suponha também que temos um array bidimensional, por exemplo, este:

javascriptlet arr = [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]];

Vamos criar uma tabela HTML com base neste array, preenchida com os elementos do array. Ou seja, teremos uma tabela com três linhas, cada uma contendo 4 células.

Vamos resolver o problema usando dois loops for-of aninhados:

javascriptlet arr = [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]];
let table = document.querySelector('#table');

for (let subArr of arr) {
  let tr = document.createElement('tr');
  
  for (let elem of subArr) {
    let td = document.createElement('td');
    td.textContent = elem;
    tr.appendChild(td);
  }
  
  table.appendChild(tr);
}

Como você pode ver, nossa solução é universal e não depende do número de subarrays nem da quantidade de elementos em cada subarray. A única condição é que os subarrays tenham a mesma quantidade de elementos.

Задание 1

Dado o array:

javascriptlet arr = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]];

Sem consultar a parte teórica da lição, exiba os elementos do array fornecido na forma de uma tabela HTML table.

Задание 2

Modifique a tarefa anterior para que na tabela sejam gravados não os elementos, mas os quadrados desses elementos.