Convertir milisegundos a segundos y minutos con JavaScript

JavaScript – Convertir milisegundos a segundos y minutos

En este artículo de programación en JavaScript te enseñaré a convertir milisegundos a segundos y minutos legibles para el usuario.

Por ejemplo, convertir 1500 milisegundos a 1 segundo en su representación 00:01.5 en donde tenemos los minutos, luego los segundos y luego la fracción del segundo: algo así como para un cronómetro.

Milisegundos a segundos y minutos

Para convertir desde milisegundos a segundos y minutos (incluso a horas con algunas modificaciones) simplemente tenemos que hacer operaciones matemáticas.

En el caso de los minutos debemos dividir los milisegundos entre 1000 (para convertir a segundos) y luego entre 60 (para convertir a minutos). El resultado debe ser convertido a entero.

Después de eso restamos los milisegundos que ya convertimos a minutos para tener un sobrante de milisegundos. A ese sobrante lo dividimos entre 1000 y serán los segundos con fracción.

Función en JavaScript

Convertir milisegundos a segundos y minutos con JavaScript
Convertir milisegundos a segundos y minutos con JavaScript

Lo que expliqué anteriormente se traduce al siguiente código. Por cierto, también he agregado un método que agrega un cero a la izquierda si es que es necesario, para que por ejemplo el 9 sea convertido a 09 pero el 10 sea dejado intacto.

Queda así:

/*
https://parzibyte.me/blog
*/
const agregarCeroSiEsNecesario = valor => {
	if (valor < 10) {
		return "0" + valor;
	} else {
		return "" + valor;
	}
}
const milisegundosAMinutosYSegundos = (milisegundos) => {
	const minutos = parseInt(milisegundos / 1000 / 60);
	milisegundos -= minutos * 60 * 1000;
	const segundos = (milisegundos / 1000);
	return `${agregarCeroSiEsNecesario(minutos)}:${agregarCeroSiEsNecesario(segundos.toFixed(1))}`;
};

const pruebas = [60000, 15000, 1000, 600000];
for (const prueba of pruebas) {
	const conversion = milisegundosAMinutosYSegundos(prueba);
	console.log("Los %d milisegundos se convierten a %s\n", prueba, conversion);
}

Nota: en la línea 15 estoy usando las plantillas de cadena.

La salida ya la pudiste ver en la imagen que acompaña al encabezado.

Eres libre de modificarlo y adaptarlo a tus necesidades. Como te dije, puedes hacer que muestre incluso las horas o extraer los valores por separado y darles otro uso.

Por ahora he ejecutado la función en Node (del lado del servidor) pero funciona en el lado del cliente de igual forma, pues al final el lenguaje es el mismo: JavaScript.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *