MomentJS - Complementos

Los complementos son características extendidas agregadas en MomentJS. MomentJS es un proyecto de código abierto y muchos complementos se encuentran en MomentJS que son aportados por sus usuarios y están disponibles usando Node.js y GitHub.

Este capítulo analiza algunos de los complementos de calendarios y los complementos de formatos de fecha disponibles en MomentJS.

Complementos de calendario

En esta sección se analizan dos tipos de complementos de Calendario: ISO calendar and Taiwan calendar.

Calendario ISO

Puede usar el siguiente comando para instalarlo con Node.js:

npm install moment-isocalendar

Puede obtener moment-isocalendar.js de GitHub - https://github.com/fusionbox/moment-isocalendar Observe el siguiente ejemplo de trabajo con isocalendar y MomentJS:

Example

var m = moment().isocalendar();

Output

Example

var m = moment.fromIsocalendar([2018, 51, 10, 670]).format('LLLL');

Output

Calendario de Taiwán

Puede usar el siguiente comando para instalarlo con Node.js:

npm install moment-jalaali

Puede obtener el moment-taiwan.js de GitHub - https://github.com/bradwoo8621/moment-taiwan Observe el siguiente ejemplo de trabajo con isocalendar y MomentJS:

Example

var m = moment('190/01/01', 'tYY/MM/DD');
var c = m.twYear();

Output

Complementos de formatos de fecha

En esta sección se analizan los siguientes tipos de complementos de formato de fecha:

  • Analizador de formato de fecha de Java
  • Formateador de fecha corta
  • Parse formato de fecha
  • Formato de duración
  • Rango de fechas
  • Rango preciso

Analizador Java DateFormat

Puede usar el siguiente comando para instalarlo con Node.js:

Puede obtener el moment-jdateformatparser.js de GitHub - https://github.com/MadMG/moment-jdateformatparser Observe el siguiente ejemplo de trabajo para moment-jdateformatparser y MomentJS -

Example

var m = moment().formatWithJDF("dd.MM.yyyy");

Output

Formateador de fecha corta

El archivo JavaScript para formato de fecha corta se puede obtener de GitHub:

https://github.com/researchgate/moment-shortformat

Syntax

moment().short();

La pantalla se ve como se muestra en la tabla aquí -

Desde el momento Desde el momento (). Corto ()
0 a 59 segundos 0 a 59 s
1 a 59 minutos 1 hasta 59 m
1 a 23 horas 1h a 23h
1 a 6 días 1d a 6d
> = 7 días y el mismo año La pantalla será como 3 de febrero, 6 de marzo
> = 7 días y año diferencial La pantalla será como 3 de febrero de 2018, 6 de marzo de 2018

Puede tomar el script por un momento del enlace de GitHub que se muestra arriba.

Example

var a = moment().subtract(8, 'hours').short();
var b = moment().add(1, 'hour').short(true);

Output

Si quieres eliminar el sufijo ago o in, puede pasar de verdadero a corto (tru.

Parse formato de fecha

Puede usar el siguiente comando para instalarlo con Node.js:

npm install moment-parseformat

Example

var a = moment.parseFormat('Friday 2018 27 april 10:28:10');

Output

Observe que la salida muestra que cualquier parámetro (fecha / hora) que se le dé al parseFormat, da el formato de la fecha como se muestra arriba.

Formato de duración

Puede usar el siguiente comando para instalar el formato de duración en Node.js:

El repositorio para el formato de duración está disponible aquí: https://github.com/jsmreese/moment-duration-format Veamos un ejemplo de trabajo con formato de duración:

Example

var a = moment.duration(969, "minutes").format("h:mm:ss");

Output

Esto agrega más detalles a la duración del momento creado.

Rango de fechas

Puede usar el siguiente comando para instalar el rango de fechas en Node.js:

npm install moment-range

Example

window['moment-range'].extendMoment(moment);
var start = new Date(2012, 0, 15);
var end = new Date(2012, 4, 23);
var range = moment.range(start, end);
console.log(range.start._d);
console.log(range.end._d);

Output

Rango preciso

El rango preciso mostrará la diferencia de fecha exacta en fecha, hora y en formato legible por humanos. Puede usar el siguiente comando para instalar un rango preciso en Node.js:

npm install moment-precise-range-plugin

Example

var a = moment("1998-01-01 09:00:00").preciseDiff("2011-03-04 18:05:06");

Output