Normalização de array no calendário em JavaScript
Nas lições anteriores, você deve ter criado
um array de números de 1 até o último dia do mês:
let arr = range(getLastDay(year, month));
Você também tem o número do dia da semana para o primeiro dia do mês e para o último:
let firstWeekDay = getFirstWeekDay(year, month);
let lastWeekDay = getLastWeekDay(year, month);
Agora vamos completar nosso array com strings
vazias à direita e à esquerda. Vamos ter uma função
normalize para isso, que recebe o array
como primeiro parâmetro, o número de strings vazias
para adicionar à esquerda como segundo e o número
de strings vazias à direita como terceiro:
function normalize(arr, left, right) {
}
Lembre-se de que à esquerda devemos adicionar firstWeekDay
elementos vazios, e à direita - 6 menos
lastWeekDay elementos. Ou seja, usaremos
nossa função normalize
assim:
let res = normalize(arr, firstWeekDay, 6 - lastWeekDay);
console.log(res);
Implemente a função normalize conforme descrito
e verifique seu funcionamento.