Calculadora de edad

Calcula edad en años, meses y días desde la fecha de nacimiento.

{{ ageCalc.message }}

Descripción

Calcular la edad parece trivial — tomas el año actual y restas el año de nacimiento — pero cualquier programador que lo haya implementado de verdad sabe que la realidad es bastante más compleja. El problema comienza en el propio calendario: el Calendario Gregoriano, adoptado por el Papa Gregorio XIII en 1582 para corregir los errores acumulados del Calendario Juliano (introducido por Julio César en el 45 a.C.), no tiene meses con la misma cantidad de días, y los años bisiestos — insertados para compensar que la revolución terrestre no dura exactamente 365 días — agregan una capa extra de complejidad. La ISO 8601, publicada en 1988 y revisada en 2004, estandarizó el formato YYYY-MM-DD que hoy domina las APIs, bases de datos y sistemas de salud, pero todavía hay sistemas legacy en producción que guardan fechas como cadenas en formato DD/MM/AAAA o, peor aún, como números seriales de Excel (donde 1 = 1 de enero de 1900).

Hay un caso especial que nunca deja de generar debate: las personas nacidas el 29 de febrero. Solo tienen una fecha de cumpleaños 'real' cada 4 años. En Japón, la ley establece que el cumpleaños legal es el 28 de febrero; en la mayoría de los países occidentales, la convención más común es el 1 de marzo. Pero hay algo aún más interesante: el sistema de edad coreano. En Corea del Sur, la tradición era que todos nacen con 1 año de edad y ganan otro año en el Año Nuevo coreano — no en su cumpleaños. Alguien nacido el 31 de diciembre podía tener '2 años' al segundo día de vida. Corea del Sur abolió oficialmente este sistema en junio de 2023 y migró al sistema occidental de conteo de edad. En programación, el error clásico es hacer `ageYears = currentYear - birthYear` sin verificar si el cumpleaños de este año ya pasó — una sola línea que garantiza un resultado incorrecto durante varios meses al año.

Una edad calculada con precisión tiene implicaciones legales y de negocio que van mucho más allá de una curiosidad: mayoría de edad, habilitación para conducir, elegibilidad para votar, consentimiento médico, jubilación — todo depende de un cálculo de fecha correcto. En el software, la librería `date-fns` de JavaScript calcula `differenceInYears` considerando correctamente si el cumpleaños ya pasó este año. En Python, `relativedelta` de la librería `dateutil` es el enfoque más robusto. También existe el problema del Año 2038: los timestamps Unix de 32 bits, contados en segundos desde el 1 de enero de 1970 00:00:00 UTC — el Unix Epoch — desbordan el 19 de enero de 2038, afectando sistemas legacy y dispositivos embebidos que todavía usan enteros de 32 bits. Esta herramienta calcula años, meses y días completos entre cualquier fecha de nacimiento y una fecha de referencia, directamente en el navegador.

Detalle técnico

Ideas claras antes de usar la herramienta

  • ¿Para qué sirve esta herramienta?: Funciona por completo en tu navegador: sirve para validar, formatear o convertir datos en el día a día.
  • ¿Se envían mis datos a algún servidor?: El procesamiento es local con JavaScript. No almacenamos lo que pegas en los campos de texto.
  • ¿Puedo usarlo con datos reales en producción?: Úsalo bajo tu responsabilidad. Para secretos (contraseñas, tokens), prefiere entornos controlados y políticas internas. Recuerda de revisar los contenidos generados. Nunca confies ciegamente en cosas que ves en internet.

Fragmento corto para probar

  • Debajo aparece también el ejemplo largo en "Fragmentos de Código"; pega esta versión corta: Ejemplo — Nascimento: 2000-01-01 Referência: hoje

Fragmentos de Código

Ejemplo de código
Nascimento: 2000-01-01
Referência: hoje

Ejemplo

Nascimento: 2000-01-01
Referência: hoje

Preguntas frecuentes

¿Para qué sirve esta herramienta?

Funciona por completo en tu navegador: sirve para validar, formatear o convertir datos en el día a día.

¿Se envían mis datos a algún servidor?

El procesamiento es local con JavaScript. No almacenamos lo que pegas en los campos de texto.

¿Puedo usarlo con datos reales en producción?

Úsalo bajo tu responsabilidad. Para secretos (contraseñas, tokens), prefiere entornos controlados y políticas internas. Recuerda de revisar los contenidos generados. Nunca confies ciegamente en cosas que ves en internet.