Olá, sou péssima com datas e estou com um problema, preciso saber com base no meu objeto de data e hora, preciso saber se a hora de inicio, fim e data não passou.
Tenho o seguinte objeto:
{
"horarioInicio": "10:00",
"horarioFim": "14:00",
"data": "2022-09-20"
}
(Basicamente preciso saber quais desses está acontecendo no momento, exemplo:
Hoje é dia 2022-09-20 e são 11:00 hrs, então esse objeto é verdadeiro.)
Estou usando moment no projeto.
Basta você juntar a data com os horários para obter a data/hora de início e fim, e depois comparar com a data atual.
Segundo a documentação , um dos formatos aceitos é “aaaa-mm-dd hh:mm”, então precisa colocar um espaço entre a data e o horário. Ficaria assim:
var objeto = {
"horarioInicio": "10:00",
"horarioFim": "14:00",
"data": "2022-09-20"
};
var inicio = moment(objeto.data + ' ' + objeto.horarioInicio);
var fim = moment(objeto.data + ' ' + objeto.horarioFim);
var agora = moment();
if (agora.isBetween(inicio, fim)) {
console.log('verdadeiro');
} else {
console.log('falso');
}
1 curtida
hugokotsubo:
horarioInicio
Muito obrigada, deu certo!
1 curtida