Agregar horas al objeto de fecha en JavaScript

Sahil Bhosale 12 octubre 2023
  1. Use el método setHours() para agregar horas al objeto Date en JavaScript
  2. Use el método getHours() y setHours() para actualizar el valor de las horas actuales en JavaScript
Agregar horas al objeto de fecha en JavaScript

El objeto Fecha en JavaScript le proporciona la semana actual del día, la fecha y la hora (con zona horaria) de su sistema. La zona horaria predeterminada del objeto Fecha es UTC, pero los métodos básicos para obtener la fecha y la hora o sus componentes funcionan todos en función de la zona horaria local (del sistema).

El objeto Date también nos proporciona varios métodos como setHours(), setMonth(), getTime(), getDay(), etc., mediante los cuales podemos acceder o modificar los valores de la Objeto Fecha como hora, horas, minutos, zona horaria y muchos más. Para ver la lista completa de métodos, visite los documentos de objeto [Date](Date - JavaScript | MDN).

Usando algunos de estos métodos, veamos ahora cómo agregar horas al objeto Fecha en JavaScript.

Use el método setHours() para agregar horas al objeto Date en JavaScript

Para actualizar el valor de la hora del objeto Date, utilizaremos el método integrado setHours(). Este método solo actualizará el valor de la hora, no los minutos y segundos.

Ahora tomemos un ejemplo y veamos cómo podemos actualizar el valor de la hora usando el método setHours(). Primero, para obtener la hora actual del sistema, debe crear un objeto de la Fecha usando la palabra clave nuevo y luego almacenarlo dentro de alguna variable fechahora actual y luego imprimir esa variable.

Esto le dará la hora local de su sistema.

Fragmento de código - JavaScript:

var currentDateTime = new Date();

function addHours(hr) {
  currentDateTime.setHours(hr);
}

console.log(currentDateTime);
addHours(5);
console.log(currentDateTime);

Producción :

Mon May 5 2022 00:28:11 GMT+0530 (India Standard Time)
Mon May 5 2022 05:28:11 GMT+0530 (India Standard Time)

Para sumar el valor de la hora, crearemos una función llamada addHours(), que tomará un único parámetro hr que será un valor entero que representará el valor de la hora que queremos sumar a la hora actual.

Dentro de esta función, llamaremos al método setHours() en la variable currentDateTime que contiene la fecha y hora locales actuales, y luego pasaremos la hr dentro de ella.

Esto establecerá cualquier argumento hr que pasemos a la función addHours(). Estamos pasando el valor entero 5 a la función addHours().

Finalmente, si imprime la hora antes y después de llamar a la función addHours, verá que ha agregado el valor 5 a la hora actual, como se muestra en el resultado anterior.

Con este método, puede reemplazar el valor de hora existente o actual por uno nuevo. Pero, ¿qué sucede si desea actualizar el valor de la hora actual en lugar de reemplazarlo por completo con un nuevo valor?

Veamos ahora cómo actualizar los valores de la hora actual usando algunos métodos predefinidos del objeto Fecha dentro de JavaScript.

Use el método getHours() y setHours() para actualizar el valor de las horas actuales en JavaScript

Estamos reemplazando directamente el valor de la hora con el nuevo valor hasta ahora. Pero, ¿qué sucede si desea actualizar el valor de la hora actual y no reemplazarlo?

Debe utilizar simultáneamente los métodos getHours() y setHours().

Fragmento de código - JavaScript:

var currentDateTime = new Date();
console.log(currentDateTime);

currentDateTime.setHours(currentDateTime.getHours() + 5);
console.log(currentDateTime);

Producción :

Mon May 5 2022 20:29:17 GMT+0530 (India Standard Time)
Tue May 6 2022 01:29:17 GMT+0530 (India Standard Time)

Aquí, también tenemos que almacenar primero la fecha y hora actuales devueltas por el objeto Date dentro de una variable currentDateTime. Luego haremos uso de las funciones setHours() y getHours() simultáneamente.

Como queremos establecer el valor de las horas, usaremos el método setHours() en la variable currentDateTime. Llamaremos al método getHours() en la variable currentDateTime dentro de este método.

El método getHours() nos dará el valor actual, y luego agregaremos 5 a ese valor, y luego el método setHours() establecerá ese valor en la variable currentDateTime.

Y si imprimes la hora antes y después usando el método setHours(), verás que la hora actual es 20; sumamos el valor 5 a este valor, y luego se convierte en 1.

Esto se debe a que el día completo es 24 horas, y 20 más 5 se convierte en 25, por lo que después de que terminen las 24 horas, comenzará con 1, como se muestra en el resultado anterior.

Sahil Bhosale avatar Sahil Bhosale avatar

Sahil is a full-stack developer who loves to build software. He likes to share his knowledge by writing technical articles and helping clients by working with them as freelance software engineer and technical writer on Upwork.

LinkedIn

Artículo relacionado - JavaScript Date