La Calculadora de fechas tiene dos modos. En el modo Sumar / Restar toma una fecha de inicio, una acción, un monto y una unidad, e imprime una línea: la fecha de inicio, el signo, el monto, la unidad y la fecha de llegada con su día de la semana y su mes escritos por extenso. En el modo Diferencia de fechas toma dos fechas e imprime el recuento exacto de días entre ellas con las semanas, meses y años derivados de ese recuento. Cada cifra se calcula en el navegador desde el propio objeto Date, sin backend y sin llamada a API. Empieza en la Calculadora de fechas y deja los valores por defecto: escribe 2026-09-24 como fecha de inicio, mantén Añadir seleccionado con Días, entra 30.
La línea de resultado del modo sumar
La línea de resultado lee fecha de inicio, signo, monto y unidad, igual a fecha de llegada, con la fecha de inicio impresa como el valor ISO crudo y la fecha de llegada escrita por extenso: día de la semana, nombre del mes y día, en el idioma de la página. El ejemplo en curso imprime 2026-09-24 + 30 Días = sábado, 24 de octubre de 2026. La misma ejecución en la página alemana imprime Samstag, 24. Oktober 2026, y en la inglesa Saturday, October 24, 2026, y las páginas en chino y japonés imprimen la fecha en su propio idioma, porque la fecha de llegada se formatea con los datos de localización del navegador en lugar de una plantilla fija. El selector de acción invierte el signo, y 2026-09-24 menos 14 días lee jueves, 10 de septiembre de 2026. El botón de copiar junto al resultado pone la línea entera en el portapapeles.
Las cuatro unidades
El selector de unidad ofrece días, semanas, meses y años, y los dos pares se comportan de forma distinta. Días y semanas son aritmética de días: una semana se convierte a días primero, así que 5 semanas entra como 35 días, y 2026-09-24 más 5 semanas llega a jueves, 29 de octubre de 2026. Meses y años son aritmética de calendario: se mueve el campo de mes o de año y se conserva el día del mes, así que 2026-09-24 más 3 meses llega a jueves, 24 de diciembre de 2026. El monto se recorta antes de la aritmética a 3650 días, 520 semanas, 120 meses y 10 años, el mismo horizonte de diez años expresado de cuatro formas, y un valor por encima del recorte se acorta al límite, así que 3651 días entra como 3650, en lugar de lanzar un error.
El desborde de meses y años
La aritmética de calendario conserva el día del mes, y cuando el mes objetivo no tiene ese día, los días sobrantes desbordan al mes siguiente. El 31 de enero de 2026 más 1 mes no tiene 31 en el febrero de 2026, que tiene 28 días, así que los tres días sobrantes dejan el resultado en martes, 3 de marzo de 2026, y no en el 28 de febrero. El inicio idéntico en 2024 llega al 2 de marzo, porque ese febrero tiene 29 días. La adición de años aplica la misma regla al campo de año: el 29 de febrero de 2024 más 1 año no tiene 29 en el febrero de 2025, así que llega al 1 de marzo de 2025. El desborde funciona también en la dirección de restar: el 31 de marzo de 2026 menos 1 mes llega al 3 de marzo de 2026, mientras que el 31 de enero de 2026 menos 1 mes llega limpiamente al miércoles, 31 de diciembre de 2025, porque diciembre tiene 31 días. La línea de resultado siempre imprime la fecha calculada, así que el desborde se ve en lugar de pasar en silencio. La guía de fechas futuras aplica esta misma regla a preguntas de fechas de vencimiento y de objetivo.
El modo diferencia
El modo diferencia toma dos fechas y calcula la brecha absoluta de milisegundos entre ellas, así que el orden de las dos entradas no importa. El recuento de días es esa brecha dividida entre 86400000 milisegundos y redondeada, y es la única cifra exacta de la línea. Las semanas, meses y años se derivan del recuento de días con divisores fijos, 7, 30.44 y 365.25, cada uno truncado hacia abajo. La ejecución de 2024-01-01 a 2026-07-01 imprime 912 días = 130 semanas ≈ 29 meses ≈ 2 años. Las aproximaciones importan: contadas en el calendario, del 1 de enero de 2024 al 1 de julio de 2026 pasan exactamente 30 meses, pero 912 dividido entre 30.44 es 29.96, que se trunca a 29, así que la cifra de meses es una conversión del recuento de días, no un recuento de meses. Un tramo corto, 2026-09-24 a 2026-12-25, imprime 92 días = 13 semanas ≈ 3 meses ≈ 0 años.
Cómo se leen las fechas
Las entradas de fecha devuelven una cadena YYYY-MM-DD en bruto, y la herramienta construye un Date a medianoche local desde los componentes de año, mes y día en lugar de parsear la cadena, porque una cadena solo de fecha se parsea como medianoche UTC, que lee un día antes en cada zona horaria al oeste de UTC. Construir la fecha desde los componentes mantiene 2026-09-24 como 2026-09-24 en la propia zona horaria del usuario, así que el recuento de días entre dos fechas no depende de dónde esté el usuario.
Lo que no es
La Calculadora de fechas no es una calculadora de edad: para el caso donde la fecha final queda clavada en hoy y la respuesta es años, meses y días de edad, la Calculadora de edad ejecuta ese desglose. Para el mismo tramo en segundos de época, el Convertidor de marca de tiempo Unix reescribe las fechas como enteros y el recuento de días sale de la diferencia dividida entre 86400. Y no cuenta días laborables: los dos modos cuentan días de calendario, fines de semana y festivos incluidos. Para el lado de días laborables de una brecha de fechas, la guía de diferencia de fechas recorre la convención de lunes a viernes y sus casos de borde de uno.