JSFiddle - React, Tailwind, and code Playground
JavaScript
var diasSemana = ['Segunda', 'Terça', 'Quarta', 'Quinta', 'Sexta', 'Sabado', 'Domingo'];
function diaSemana(nr) {
return diasSemana[nr % 7];
}
function diasMes(ano, mes) {
var semanas = [];
var semana = {};
var diaUm = new Date(ano, mes - 1);
var inicioSemana = diaUm.getDay() - 1;
var ultimoDia = new Date(ano, mes, -1).getDate();
for (var i = 1; i <= ultimoDia; i++) {
var dia = diaSemana(inicioSemana++);
semana[dia] = [i, mes].join('/');
if (i % 7 == 0) {
semanas.push(semana);
semana = {}
} else {
if (i == ultimoDia) semanas.push(semana); // juntar os ultimos dias
}
}
return semanas;
}
var janeiro = diasMes(2016, 1);
console.log(janeiro)
alert(JSON.stringify(janeiro, null, 4));