util-tiempo
v1.0.52
Published
util-tiempo para calcular tiempos, para obtener la fecha a elegir, con muchas opciones!
Downloads
25
Readme
util-tiempo
util-tiempo es un módulo de utilidades para cálculos de tiempo y obtención de fechas seleccionables con diversas opciones.!
⚠ ADVERTENCIA: Los tiempos deben estar en
milisegundos
. Si los tiempos están ensegundos
, simplemente multiplícalos por mil (*1000
).
Funciones disponibles
Aquí tienes un ejemplo de cómo puedes obtener los datos utilizando el código proporcionado.
Utilizaremos el siguiente timestamp
como ejemplo para mostrar el formato de los datos obtenidos:
- Timestamp (segundos): 1146747723
- Timestamp (milisegundos): 1146747723000
- Fecha y hora (GMT): 4 de mayo de 2006 13:02:03
const {
get,
getMs,
getTime,
getDate,
getCompareDate,
getFormatDate,
} = require("util-tiempo");
// alternativa
import {
get,
getMs,
getTime,
getDate,
getCompareDate,
getFormatDate,
} from "util-tiempo";
// get() argumento ms / s / m / h / d / w / mh / y - 10/8/2021 15:17:10.242 GMT+02:00 DST
get("ms"); // resultado = '240'
get("s"); // resultado = '10'
get("m"); // resultado = '17'
get("h"); // resultado = '15'
get("d"); // resultado = '10'
get("w"); // resultado = '5'
get("mh"); // resultado = '8'
get("y"); // resultado = '2021'
// getMs() timestamp 1ms / 1s / 1m / 1h / 1d / 1w / 1mh / 1y
getMs("1ms"); // resultado = '1'
getMs("1s"); // resultado = '1000'
getMs("1m"); // resultado = '60000'
getMs("1h"); // resultado = '3600000'
getMs("1d"); // resultado = '86400000'
getMs("1w"); // resultado = '604800016'
getMs("1mh"); // resultado = '2629800000'
getMs("1y"); // resultado = '31557600000'
// getTime() por defecto timeZone 'Europe/Madrid'
getTime(); // resultado = Hora actual en 'Europe/Madrid'
// getTime() timestamp new Date() - timeZone 'Atlantic/Canary'
getTime({ timezone: "Atlantic/Canary" }); // resultado = Hora actual en 'Atlantic/Canary'
// getTime() timestamp 1146747723000
getTime({ timestamp: 1146747723000 }); // resultado = '15:02:03'
// getTime() timestamp 1146747723000 - timeZone 'Atlantic/Canary'
getTime({ timestamp: 1146747723000, timeZone: "Atlantic/Canary" }); // resultado = '14:02:03'
// getTime() timestamp 1146747723000 - local en-US - timeZone 'America/New_York' - hour12 true
getTime({
timestamp: 1146747723000,
local: "en-US",
timeZone: "America/New_York",
hour12: true,
}); // resultado = '9:02:03 AM'
// getDate() por defecto timeZone 'Europe/Madrid'
getDate(); // resultado = Fecha actual en 'Europe/Madrid'
// getDate() timeZone 'Atlantic/Canary'
getDate({ timeZone: "Atlantic/Canary" }); // resultado = Fecha actual en 'Atlantic/Canary'
// getDate() timestamp 1146747723000
getDate({ timestamp: 1146747723000 }); // resultado = '04/05/2006'
// getDate() timestamp 1146747723000 - timeZone 'Atlantic/Canary'
getDate({ timestamp: 1146747723000, timeZone: "Atlantic/Canary" }); // resultado = '04/05/2006'
// getDate() timestamp 1146747723000 - local en-US - timeZone 'America/New_York'
getDate({
timestamp: 1146747723000,
local: "en-US",
timeZone: "America/New_York",
}); // resultado = '5/4/2006'
// getCompareDate() timestamp(1) 76500000 - timestamp(2) por defecto new Date()
getCompareDate(76500000); // resultado = '21 horas 15 minutos'
// getCompareDate() timestamp(1) 1146747723 - timestamp(2) 1146747723 + 76500000
getCompareDate(1146747723, 1146747723 + 76500000); // resultado = '21 horas 15 minutos'
// getFormatDate() por defecto timeZone 'Europe/Madrid' - format DD/MM/YYYY hh:mm:ss
getFormatDate(); // resultado = Tiempo y fecha actual en el formato 'DD/MM/YYYY hh:mm:ss' = '04/05/2006 15:02:03'
// getFormatDate() timestamp 1146747723000
getFormatDate({ timestamp: 1146747723000 }); // resultado = '04/05/2006 15:02:03'
// getFormatDate() format 15.02.03
getFormatDate({ timestamp: 1146747723000, format: "{hh}.{mm}.{ss}" }); // resultado = '15.02.03'
// getFormatDate() format 4-5-06
getFormatDate({ timestamp: 1146747723000, format: "{D}-{M}-{YY}" }); // resultado = '4-5-06'
// getFormatDate() timestamp 1146747723000 - timeZone 'America/New_York' - hour12 true - format 9:02:03 AM - 04/05/2006
getFormatDate({
timestamp: 1146747723000,
timeZone: "America/New_York",
hour12: true,
format: "{h}:{mm}:{ss} {apm} - {DD}/{MM}/{YYYY}",
}); // resultado = '9:02:03 AM - 04/05/2006'
Uso de las funciones
ℹ DESCRIPCIÓN: Esta función devuelve la unidad de tiempo especificada como argumento.
Puedes ver cómo se utilizan los argumentos en elejemplo.
No incluyas los símbolos < >
al especificar el argumento.
- <argumento>
- La unidad de tiempo
{tiempo}
que se desea obtener. Por ejemplo, para obtener el año actual2023
debes de pasar como argumentoy
. - Unidades de tiempo admitidas:
- Años:
years
,year
,yrs
,yr
,y
- Meses:
months
,month
,mth
,mh
- Semanas:
weeks
,week
,wk
,w
- Días:
days
,day
,d
- Horas:
hours
,hour
,hrs
,hr
,h
- Minutos:
minutes
,minute
,mins
,min
,m
- Segundos:
seconds
,second
,secs
,sec
,s
- Milisegundos:
milliseconds
,millisecond
,msecs
,msec
,ms
- Años:
- La unidad de tiempo
ℹ DESCRIPCIÓN: Convierte la cantidad de tiempo que pasas como argumento en milisegundos.
Puedes ver como se usan los argumentos en el ejemplo.
No incluyas los símbolos < >
al especificar el argumento.
- <argumento>
- Añade la cantidad de tiempo deseada con su unidad de tiempo
{num}{tiempo}
. Por ejemplo, para que te devuelva la cantidad de milisegundos de1 año
debes de pasar como argumento1y
. - Si no añades la unidad de tiempo, el código reconocerá que la cantidad de tiempo es en
milisegundos
. - Unidades de tiempo:
- Años:
years
,year
,yrs
,yr
,y
- Meses:
months
,month
,mth
,mh
- Semanas:
weeks
,week
,wk
,w
- Días:
days
,day
,d
- Horas:
hours
,hour
,hrs
,hr
,h
- Minutos:
minutes
,minute
,mins
,min
,m
- Segundos:
seconds
,second
,secs
,sec
,s
- Milisegundos:
milliseconds
,millisecond
,msecs
,msec
,ms
o no añadas la unidad de tiempo
- Años:
- Añade la cantidad de tiempo deseada con su unidad de tiempo
ℹ DESCRIPCIÓN: Este comando te devuelve la hora según el formato le hayas pasado.
Todos los argumentos son opcionales.
Puedes ver como se usan los argumentos en él ejemplo.
No incluyas los símbolos < >
al especificar el argumento.
- timestamp: <tiempo> [OPCIONAL]
- Si no se define estará tomando el tiempo actual.
- El tiempo lo tienes que definir como
timestamp
, el código reconoce si está enmilisegundos
. Puedes obtener eltimestamp
de una fecha en concreta en esta página.
- local: <formato> [OPCIONAL]
- Puedes revisar la lista de formatos locales.
- Si no se define este argumento, tomará el formato
hh:mm:ss
- timeZone: <zonahoraria> [OPCIONAL]
- Puedes revisar la lista de zonas horarias.
- Si no se define este argumento, tomará el tiempo de
Europe/Madrid
- hour12: <true/false> [OPCIONAL]
- Si quieres que el formato de la hora sea en
12h
, define este argumento comotrue
. - Si quieres que el formato de la hora sea en
24h
, no definas el argumento o defínelo comofalse
.
- Si quieres que el formato de la hora sea en
ℹ DESCRIPCIÓN: Este comando te devuelve la fecha según el formato le hayas pasado.
Todos los argumentos son opcionales.
Puedes ver como se usan los argumentos en el ejemplo.
No incluyas los símbolos < >
al especificar el argumento.
- timestamp: <tiempo> [OPCIONAL]
- Si no se define `estará tomando el tiempo actual.
- El tiempo lo tienes que definir como
timestamp
, el código reconoce si está enmilisegundos
. Puedes obtener eltimestamp
de una fecha en concreta en esta página.
- local: <formato> [OPCIONAL]
- Puedes revisar la lista de formatos locales.
- Si no se define este argumento, tomará el formato
DD/MM/YYYY
- timeZone: <zonahoraria> [OPCIONAL]
- Puedes revisar la lista de zonas horarias.
- Si no se define este argumento, tomará el tiempo de
Europe/Madrid
ℹ DESCRIPCIÓN: Este comando te devuelve la diferencia entre dos fechas o cuanto tiempo son los milisegundos que le pasas.
El segundo tiempo es opcional.
Puedes ver como se usan los argumentos en el ejemplo.
No incluyas los símbolos < >
al especificar el argumento.
- timestamp1: <tiempo1> [OPCIONAL]
- El tiempo lo puedes definir como
timestamp
, este debe estar enmilisegundos
. Puedes obtener eltimestamp
de una fecha en concreta en esta página. También puedes añadirle una cantidad de milisegundos en concreto.
- El tiempo lo puedes definir como
- timestamp2: <tiempo2> [OPCIONAL]
- El tiempo lo puedes definir como
timestamp
, este debe estar enmilisegundos
. Puedes obtener eltimestamp
de una fecha en concreta en esta página. También puedes añadirle una cantidad de milisegundos en concreto. - Si se define este argumento, el código calculará la diferencia entre los dos tiempos y te devolverá el resultado con la diferencia.
- El tiempo lo puedes definir como
- format: <formato> [OPCIONAL]
Hacer - Puedes revisar la lista de formatos locales. - Si no se define este argumento, tomará el formato
DD/MM/YYYY
ℹ DESCRIPCIÓN: Este comando te devuelve la fecha según el formato le hayas pasado.
Todos los argumentos son opcionales.
Puedes ver como se usan los argumentos en el ejemplo.
No incluyas los símbolos < >
al especificar el argumento.
- timestamp: <tiempo> [OPCIONAL]
- Si no se define estará tomando el tiempo actual.
- El tiempo lo tienes que definir como
timestamp
, el código reconoce si está enmilisegundos
. Puedes obtener eltimestamp
de una fecha en concreta en esta página.
- timeZone: <zonahoraria> [OPCIONAL]
- Puedes revisar la lista de zonas horarias.
- Si no se define este argumento, tomará el tiempo de
Europe/Madrid
- hour12: <true/false> [OPCIONAL]
- Si quieres que el formato de la hora sea en
12h
, define este argumento comotrue
. - Si quieres que el formato de la hora sea en
24h
, no definas el argumento o defínelo comofalse
.
- Si quieres que el formato de la hora sea en
- format: <formato> [OPCIONAL]
- Si no defines este argumento, por defecto te mostrará el tiempo en el formato
DD/MM/YYYY hh:mm:ss
. - Puedes definir el formato de la fecha que prefieras con las siguientes variables:
- Hora:
{hh}
en dos dígitos,{h}
en un dígito [01:02:03
=>{hh}
='01'
,{h}
='1'
] - Minutos:
{mm}
en dos dígitos,{m}
en un dígito [01:02:03
=>{mm}
='02'
,{m}
='2'
] - Segundos:
{ss}
en dos dígitos,{s}
en un dígito [01:02:03
=>{ss}
='03'
,{s}
='3'
] - Día:
{DD}
en dos dígitos,{D}
en un dígito [04/05/2006
=>{DD}
='04'
,{D}
='4'
] - Mes:
{MM}
en dos dígitos,{M}
en un dígito [04/05/2006
=>{MM}
='05'
,{M}
='5'
] - Año:
{YYYY}
en cuatro dígitos,{YY}
en dos dígitos [04/05/2006
=>{YYYY}
='2006'
,{YY}
='06'
] - AM/PM:
{apm}
*Solo se mostrará si esta definidohour12: true
- Hora:
- EJEMPLO:
"{DD}/{MM}/{YYYY} {hh}:{mm}:{ss}"
. Este ejemplo es como se escribiría el formato que el código tiene por defecto.
- Si no defines este argumento, por defecto te mostrará el tiempo en el formato