Para que sirven las librerías Moment de JAVA

 


Momentjs es una librería que nos permite solventar estos problemas e implementa un sistema de manejo de fechas mucho más cómodo. Vamos a ver un par de ejemplos prácticos: En este primer ejemplo creamos dos fechas una el 30 de Mayo de 2015 y otra que hace referencia al momento actual.

Esta entrada no es un tutorial completo con todas las cosas que puedes hacer (que son muchas) con moment.js, para eso tienes la documentación en su página oficial que lo explica todo perfectamente, es para que tengas un punto de partida y para explicar algunas tareas que personalmente hago bastante con esta librería.

Instalación

Instalar la librería es un muy facil, puedes descargarla con npm, con bower, desde un cdn

O descargarte el proyecto de github 

GitHub - moment/moment: Parse, validate, manipulate, and display dates in javascript.




// Con node

var moment = require('moment');

 

// Con typescript

import * as moment from 'moment';

 

// Directamente en la página

<script src="moment.js"></script>

Luego dependiendo de como sea tu proyecto hay que importarlo, como cualquier otra librería, os dejo algunas maneras.Y ahora que tu proyecto ya lo tiene es hora de empezar a usar moment.js, pero antes veamos que podemos hacer para manipular fechas sin la librería…

Fechas en Javascript

El propio lenguaje ya nos proporciona el objeto Date para manipular fechas, para hacer cosas no demasiado complejas funciona bien, pero obviamente no cubre todas las funcionalidades que tiene la librería moment.js.

Básicamente podemos pedirle que nos de la hora de actual usando el constructor sin parámetros, o asignar nosotros una fecha asignando parámetros al constructor, os pongo los ejemplos.

new Date()

// Sin parámetros para la fecha actual...

// Devuelve 2018-11-03T11:45:18.995Z

 

new Date(2018, 11, 24, 10, 33, 30, 0)

// Los parámetros son (year, month, day, hours, minutes, seconds, milliseconds)

// Devuelve 2018-12-24T09:33:30.000Z

 

new Date(86400000);

// Aquí pasamos milisegundos, y devuelve la fecha del 1 de Enero de 1970 a las 12 de la 00:00 más esos ms

// Devuelve 1970-01-02T00:00:00.000Z

 

new Date("October 15, 2018 12:05:00");

// Por último podemos pasar un Da


Estas son básicamente las opciones que tenemos de forma nativa para crear una fecha, acordarse de todos esos parámetros si quieres especificar algo es la muerte y además tiene sus propias reglas como que el numérico que especifica los meses va de 0 a 11 (que conste que en moment.js también es así).

Luego esta el tema de los milisegundos, sin comentarios, para un timestamp esta bien pero dudo que nadie intente introducir una fecha calculando los milisegundos que han pasado desde el 1 de Enero de 1970 a las 00:00.

Tal vez el DateString sea la manera más cómoda de introducirlo pero nos faltan cosas.

Es cierto que una vez tenemos la fecha podemos extraer datos con un montón de métodos que tiene disponibles, pero solo para explicar alguna de las carencias es que si yo quiero solamente que me diga el nombre del mes en un idioma me tengo que crear un método, ya no hablemos de sumar y restar fechas…

Referencias

/MirthConnectExamples

https://www.genbeta.com/desarrollo/gestionando-fechas-con-moment-js#:~:text=de%20las%20fechas.-,Moment.,hace%20referencia%20al%20momento%20actual.

https://www.oscarlijo.com/blog/aprende-a-usar-moment-js/

GitHub - moment/moment: Parse, validate, manipulate, and display dates in javascript.

Comentarios

Entradas más populares de este blog

¿Cómo buscar tweets antiguos de una persona?

¿Qué es la Norma GAMP 5 y para que sirve?

¿Que tipos de Mensajes de HL7 hay?