Nível 9.10 do livro de exercícios JavaScript
É dada uma tabela. O usuário clica sequencialmente em duas células, destacando-as. Faça com que fiquem destacadas em vermelho todas as células localizadas em ordem entre aquelas nas quais o usuário clicou.
Escreva um código que determine o nível máximo de aninhamento de um array multidimensional.
Dada uma lista de alguns dados referentes a determinadas datas, armazenada na seguinte estrutura:
let data = [
{
year: 2019,
month: 11,
day: 20,
data: ['array com dados']
},
{
year: 2019,
month: 11,
day: 21,
data: ['array com dados']
},
{
year: 2019,
month: 12,
day: 25,
data: ['array com dados']
},
{
year: 2019,
month: 12,
day: 26,
data: ['array com dados']
},
{
year: 2020,
month: 10,
day: 29,
data: ['array com dados']
},
{
year: 2020,
month: 10,
day: 30,
data: ['array com dados']
},
{
year: 2020,
month: 11,
day: 19,
data: ['array com dados']
},
{
year: 2020,
month: 11,
day: 20,
data: ['array com dados']
},
]
Escreva um código que reformate a estrutura dos dados para uma estrutura do tipo:
{
ano1: {
mês1: {
dia1: [array de dados],
dia2: [array de dados],
dia3: [array de dados],
}
mês2: {
dia1: [array de dados],
dia2: [array de dados],
dia3: [array de dados],
}
}
ano2: {
mês1: {
dia1: [array de dados],
dia2: [array de dados],
dia3: [array de dados],
}
mês2: {
dia1: [array de dados],
dia2: [array de dados],
dia3: [array de dados],
}
}
}