11. Fechas, períodos y unidades de tiempo

Antes de calcular intereses necesitamos describir el tiempo sin ambigüedades: cuándo comienza una operación, cuándo termina y cómo medimos el intervalo entre ambas fechas.

11.1 Una fecha no es un período

Una fecha identifica un momento del calendario, como el 10 de marzo de 2026. Un período expresa una duración entre dos momentos, como 30 días o 6 meses.

Fecha

Responde a la pregunta: ¿cuándo ocurre el movimiento?

Período

Responde a la pregunta: ¿cuánto tiempo transcurre?

Confundir ambas ideas puede desplazar vencimientos o aplicar una fórmula durante una duración incorrecta.

11.2 Fecha inicial, fecha final e intervalo

Una operación temporal básica contiene tres datos relacionados:

fecha final = fecha inicial + intervalo

Si conocemos dos de estos elementos, normalmente podemos determinar el tercero bajo una regla de calendario definida.

10/03/2026
inicio
25/09/2026
final

11.3 El origen temporal: t = 0

En un modelo financiero solemos llamar t = 0 a la fecha tomada como origen. Los demás momentos se expresan como distancias desde ese punto: t = 1, t = 2 y así sucesivamente.

El número no identifica por sí solo días, meses o años. La unidad debe declararse: t = 2 meses y t = 2 años describen intervalos muy diferentes.

11.4 Unidades de tiempo frecuentes

Unidades y preguntas necesarias antes de utilizarlas.
UnidadInterpretación habitualPrecaución
DíaUna fecha del calendario a la siguienteDefinir si se cuenta el inicio o el final
Semana7 días consecutivosNo confundir con semana laboral
MesAvance a una fecha del mes siguienteLos meses no duran lo mismo
Trimestre3 mesesDebe conservarse la regla mensual
Semestre6 mesesNo equivale siempre a una cantidad fija de días
AñoAvance a la fecha correspondiente del año siguientePuede incluir un 29 de febrero

11.5 La unidad debe acompañar al número

Escribir solamente n = 8 deja incompleta la información. Podría significar 8 días, 8 meses u 8 períodos definidos por un contrato. Una representación más segura conserva cantidad y unidad juntas:

const plazo = {
  cantidad: 8,
  unidad: "meses"
};

console.log("Cantidad:", plazo.cantidad);
console.log("Unidad:", plazo.unidad);
console.log("Plazo completo:", `${plazo.cantidad} ${plazo.unidad}`);

Esta estructura reduce errores y facilita validar si los datos de una operación son compatibles.

11.6 Tiempo calendario y duración fija

“Un mes” puede significar avanzar hasta la misma posición del mes siguiente, mientras que “30 días” representa una duración fija. No son expresiones intercambiables.

Desde el 1 de febrero de 2026, un mes calendario termina el 1 de marzo y comprende 28 días. En cambio, 30 días después se llega al 3 de marzo. La regla elegida debe estar escrita antes de calcular.

11.7 Cómo contar los días

Entre dos fechas hay que declarar qué extremos se incluyen. En muchas diferencias informáticas se excluye el instante inicial y se incluye el final. Así, del 10 al 11 de marzo transcurre un día.

días transcurridos = fecha final − fecha inicial

Este curso usará esa convención en el simulador y la indicará de forma explícita.

Otra actividad puede requerir contar ambos días o únicamente días hábiles. Esas reglas producen resultados distintos y no deben mezclarse silenciosamente.

11.8 Meses y años con fechas especiales

Los calendarios contienen casos que un programa debe resolver de forma explícita:

  • enero tiene 31 días y febrero tiene 28 o 29;
  • sumar un mes al 31 de enero no encuentra un día 31 en febrero;
  • sumar un año al 29 de febrero requiere decidir qué fecha usar en un año no bisiesto;
  • la cantidad de días de un año puede ser 365 o 366.

No hay que corregir estos casos a escondidas: la política de ajuste forma parte de las reglas de la operación.

11.9 Expresar un intervalo en otra unidad

Una cantidad exacta de días puede expresarse como una cantidad decimal de semanas dividiendo por 7. También puede calcularse una referencia basada en meses de 30 días o años de 365 días, siempre que se aclare que se trata de una base elegida.

períodos = días transcurridos / días de la unidad

Por ejemplo, 199 días son 28 semanas completas y 3 días; como número decimal, son aproximadamente 28,4286 semanas. En una base ilustrativa de 30 días por mes representan 6,6333 meses.

11.10 Consistencia temporal

Antes de usar una duración en una fórmula debemos comprobar:

  • que la fecha final no sea anterior a la inicial;
  • que cantidad y unidad estén presentes;
  • que la unidad utilizada sea la que espera el modelo;
  • que la convención de conteo esté documentada;
  • que los redondeos no alteren un vencimiento.

Convertir unidades sin declarar una base puede generar un resultado numérico preciso, pero conceptualmente incorrecto.

11.11 Fechas seguras en JavaScript

Una fecha escrita como AAAA-MM-DD puede analizarse separando sus componentes y construyendo un instante UTC. De ese modo evitamos que un cambio de huso horario desplace el día durante un cálculo basado solo en fechas.

const MS_POR_DIA = 24 * 60 * 60 * 1000;

function fechaUTC(texto) {
  const [anio, mes, dia] = texto.split("-").map(Number);
  return Date.UTC(anio, mes - 1, dia);
}

function diasEntre(inicio, fin) {
  return (fechaUTC(fin) - fechaUTC(inicio)) / MS_POR_DIA;
}

console.log(diasEntre("2026-03-10", "2026-09-25")); // 199

UTC se usa aquí como una herramienta de cálculo. Si la operación depende de horas, zonas horarias o cierres comerciales, el modelo necesita información adicional.

11.12 Calculador de fechas y períodos

Elegí dos fechas y una unidad de referencia. La herramienta calcula los días transcurridos, descompone el intervalo en unidades completas y muestra su expresión decimal.

Intervalo entre dos fechas

Convención: se excluye la fecha inicial y se incluye la final.

Días transcurridos199 días
Unidades completas y resto28 semanas + 3 días
Períodos decimales28,4286 semanas

Cálculo: 199 días / 7 días por semana = 28,4286 semanas.

Intervalo válido. Las semanas representan bloques exactos de 7 días.

11.13 Qué representa el resultado

Los días transcurridos son una diferencia exacta entre las dos fechas suministradas bajo la convención indicada. Las expresiones en meses de 30 días y años de 365 días son referencias numéricas, no meses o años calendario completos.

El calculador no determina vencimientos contractuales, feriados, días hábiles ni convenciones financieras de cómputo. Esas decisiones necesitan reglas específicas.

11.14 Ejercicio propuesto

Una operación comienza el 15 de abril de 2026 y termina el 2 de julio de 2026. Usá la convención que excluye la fecha inicial e incluye la final.

  1. Calculá la cantidad de días transcurridos.
  2. Expresá el resultado en semanas completas y días restantes.
  3. Expresalo como número decimal de semanas con cuatro decimales.
  4. Representá el plazo mediante un objeto de JavaScript.
  5. Explicá por qué no conviene llamarlo simplemente “tres meses”.
Ver solución y código

Transcurren 78 días: 11 semanas completas y 1 día. Como número decimal son 11,1429 semanas. No son tres meses calendario porque desde el 15 de abril hasta el 15 de julio transcurrirían tres meses.

const plazo = {
  inicio: "2026-04-15",
  fin: "2026-07-02",
  dias: 78,
  semanasCompletas: 11,
  diasRestantes: 1
};

console.log(plazo.dias / 7); // 11.142857...

11.15 Ideas para recordar

  • Una fecha identifica un momento; un período mide una duración.
  • Todo número temporal necesita una unidad explícita.
  • Un mes calendario no equivale necesariamente a 30 días.
  • El conteo debe indicar qué fechas incluye.
  • Los casos de fin de mes y año bisiesto requieren una política definida.
  • En JavaScript conviene separar las fechas civiles de las horas y zonas horarias.

En el próximo tema utilizaremos estas ideas para construir una línea de tiempo que ordene capitales e intereses.