Hoy os traigo un pequeño script para vuestras aplicaciones móviles qué permitirá comparar dos fechas en formato UTC en React Native, React o JavaScript Vanila y obtener los segundos de diferencia.

El código obtiene una fecha que llega en formato UTC desde la base de datos. A veces no incluye la Z al final, se debe añadir para indicar que la fecha es formato UTC.
Al restar ambas fechas y una de ellas ser formato UTC, trata a las dos cómo UTC y las resta independientemente del USO horario qué tenga el dispositivo.
export function restarTiempo(fecha: string) { // Si la fecha no tiene zona horaria, agregamos "Z" al final para forzar UTC const fechaServidor = fecha.includes('Z') ? fecha : `${fecha}Z`; // Obtener la fecha actual en UTC let fechaActualUTC = new Date(); console.log('fechaActual UTC', fechaActualUTC); // Crear un objeto Date con la fecha proporcionada en UTC const fechaRestar = new Date(fechaServidor); console.log('fechaRestar', fechaRestar); // Calcular la diferencia en milisegundos entre las dos fechas const diferencia = fechaRestar.getTime() - fechaActualUTC.getTime(); console.log('diferencia', diferencia); // Convertir la diferencia a segundos y asegurarse de que no sea negativa let segundos = Math.floor(diferencia / 1000); if (segundos < 0) { segundos = 0; } return segundos; }

Ingeniero en Informática, Investigador, me encanta crear cosas o arreglarlas y darles una nueva vida. Escritor y poeta. Más de 20 APPs publicadas y un libro en Amazon.