Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

112
Visualizações
Cómo obtener la diferencia horaria de ZoneDateTime en javascript

¿Cómo puedo obtener la diferencia de tiempo en segundos entre dos fechas y horas? Una es del backend en forma de ZoneDateTime y la otra será la hora actual en el frontend mientras se recibe la respuesta.

El tiempo de respuesta del backend es -

 callStartTime:{ chronology: {id: 'ISO', calendarType: 'iso8601'} dayOfMonth: 8 dayOfWeek: "TUESDAY" dayOfYear: 39 hour: 16 minute: 15 month: "FEBRUARY" monthValue: 2 nano: 240000000 offset: {totalSeconds: 19800, id: '+05:30', rules: {…}} second: 29 year: 2022 zone: {id: 'Asia/Calcutta', rules: {…}}

A partir de esto ¿Cómo puedo encontrar la diferencia entre la hora actual y esta hora en segundos?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Calcule el valor de tiempo ECMAScript equivalente a partir de los datos. Reste eso del valor de tiempo actual y tendrá la diferencia en milisegundos, por ejemplo

 function getTimeDiff(data, date = new Date()) { let utc = new Date(Date.UTC( data.year, data.monthValue - 1, data.dayOfMonth, data.hour, data.minute, data.second ) - data.offset.totalSeconds*1e3); return date - utc; } function msToTime(ms) { let days = ms / 8.64e7 | 0; let hrs = (ms%8.64e7) / 3.6e6 | 0; let mins = (ms%3.6e6) / 6e4 | 0; let secs = (ms%6e4) / 1e3 | 0; let z = n => (n<10? '0':'') + n; return `${days? days + ' day' + (days == 1? ' ' : 's ') : ''}${z(hrs)}:` + `${z(mins)}:${z(secs)}`; } let callStartTime = { chronology: {id: 'ISO', calendarType: 'iso8601'}, dayOfMonth: 8, dayOfWeek: "TUESDAY", dayOfYear: 39, hour: 16, minute: 15, month: "FEBRUARY", monthValue: 2, nano: 240000000, offset: {totalSeconds: 19800, id: '+05:30', rules: {}}, second: 29, year: 2022, zone: {id: 'Asia/Calcutta', rules: {}} }; ['2022-02-08T16:15:29+05:30', // 0 null // now ].forEach(ts => { let data = callStartTime; let compDate = ts? new Date(ts) : new Date(); let diffMs = getTimeDiff(data, compDate); console.log(`${ts || compDate.toISOString()} : ` + `${diffMs} ms (${msToTime(diffMs)})` ); });

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda