Introdução
Neste laboratório, exploraremos como criar um gerador de intervalo de datas usando JavaScript. Este gerador nos permitirá gerar facilmente todas as datas dentro de um intervalo especificado, utilizando um passo definido. Ao usar o construtor Date e a palavra-chave yield, podemos iterar eficientemente sobre as datas e retorná-las ao usuário. Este laboratório será uma ótima oportunidade para praticar o trabalho com loops e datas em JavaScript.
Gerador de Intervalo de Datas
Para gerar todas as datas em um determinado intervalo usando um passo definido, use o seguinte código no Terminal/SSH e digite node:
const dateRangeGenerator = function* (start, end, step = 1) {
let d = start;
while (d < end) {
yield new Date(d);
d.setDate(d.getDate() + step);
}
};
Isso cria um gerador que usa um loop while para iterar de start a end, usando o construtor Date para retornar cada data no intervalo e incrementa por step dias usando Date.prototype.getDate() e Date.prototype.setDate().
Para usar um valor padrão de 1 para step, omita o terceiro argumento.
Aqui está um exemplo de como usar o dateRangeGenerator:
[...dateRangeGenerator(new Date("2021-06-01"), new Date("2021-06-04"))];
// [ 2021-06-01, 2021-06-02, 2021-06-03 ]
Resumo
Parabéns! Você concluiu o laboratório do Gerador de Intervalo de Datas. Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.