Obtenha os meses entre duas datas
Crie uma função que, dadas 2 datas, retorne os nomes dos meses presentes entre elas (inclusive).
Exemplos
Entrada
var january = new Date(2017, 0, 1);
var march = new Date(2017, 2, 1);
monthsInterval(january, march)Saída
['January', 'February', 'March']Entrada
var december = new Date(2017, 11, 1);
var january = new Date(2018, 0, 1);
monthsInterval(december, january)Saída
['January', 'December']Entrada
var january2017 = new Date(2017, 0, 1);
var january2018 = new Date(2018, 0, 1);
monthsInterval(january2017, january2018)Saída
['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'](Observe que January não é duplicado!)
Observações
- O array retornado deve incluir os meses de
dateStartedateEnd(inclusive) - O array retornado não deve incluir valores duplicados
- Os nomes dos meses retornados pela função devem estar ordenados (não alfabeticamente, mas de acordo com qual vem primeiro (January = 1.º mês, February = 2.º mês, … , December = 12.º mês))
- A função deve produzir a mesma saída mesmo que
dateStartseja maior quedateEnd