Complementos para Moment.js

Algunas personas han creado complementos para Moment.js que pueden resultarte útiles.

El complemento Strftime

Firma del método
npm install moment-strftime

Si te sientes más cómodo trabajando con strftime en lugar de tokens de análisis similares a LDML, puedes usar el complemento moment-strftime de Ben Oakes.

El repositorio está ubicado en github.com/benjaminoakes/moment-strftime.

El complemento MSDate

Si estás utilizando fechas de automatización OLE en .NET, consulta moment-msdate de Markit On Demand. El uso de este complemento te permite formatear fechas OA en fechas JavaScript y viceversa.

Convierte un moment en una fecha OA:

JavaScript
moment().toOADate(); // un número de coma flotante

O convierte una fecha OA en un moment:

JavaScript
moment.fromOADate(41493); // Wed Aug 07 2013 00:00:00 GMT-0600 (MDT)

Puedes encontrar más información y documentación detallada en GitHub en http://markitondemand.github.io/moment-msdate/.

El complemento Java DateFormat Parser

Firma del método
npm install moment-jdateformatparser

Si deseas trabajar con java.text.DateFormat, puedes utilizar este complemento.

Por ejemplo,

JavaScript
moment("2013-12-24 14:30").formatWithJDF("dd.MM.yyyy");  // devuelve la fecha formateada "24.12.2013"
moment().toJDFString("DD.MM.YYYY");  // devuelve el patrón de formato Java "dd.MM.yyyy"

El repositorio está ubicado en github.com/MadMG/moment-jdateformatparser.

El complemento Date Ranges

Firma del método
npm install moment-range

Si necesitas trabajar con rangos de fechas, puedes utilizar el complemento moment-range de Gianni Chiappetta.

La documentación se puede encontrar en la página de inicio github.com/rotaready/moment-range.

Y también está disponible para la web en el repositorio a continuación.

El repositorio está ubicado en github.com/rotaready/moment-range.

El complemento Twix

Firma del método
  npm install twix

Otro complemento de rango es la biblioteca Twix de Isaac Cambron. Tiene muchas características relacionadas con el rango y se destaca al formatear rangos de manera legible. Por ejemplo,

JavaScript
var t = moment("1/25/1982 9:30 AM").twix("1/25/1982 1:30 PM");
t.isCurrent(); // false
t.count('minutes'); // 241
t.format();  // 'Jan 25, 1982, 9:30 AM - 1:30 PM'
t.simpleFormat("h:m"); // '9:30 - 1:30'

La documentación completa de todas las opciones y características se encuentra aquí.

Está disponible en npm así:

npm install twix

O simplemente toma el archivo JS desde aquí.

El complemento Precise Range

Firma del método
npm install moment-precise-range-plugin

El complemento Precise Range, escrito por Rob Dawson, se puede utilizar para mostrar representaciones exactas y legibles por humanos de rangos de fecha/hora:

JavaScript
moment("2014-01-01 12:00:00").preciseDiff("2015-03-04 16:05:06");
 // 1 year 2 months 3 days 4 hours 5 minutes 6 seconds
JavaScript
moment.preciseDiff("2014-01-01 12:00:00", "2014-04-20 12:00:00");
// 3 months 19 days

Para obtener los valores numéricos sin formato en lugar de una cadena, pasa el valor true como tercer argumento del método:

JavaScript
moment.preciseDiff(m1, m2, true); 
// {years : 0, months : 1, days : 2, hours : 3, minutes : 4, seconds : 5, firstDateWasLater : false}

El complemento ISO Calendar

Firma del método
npm install moment-isocalendar

Si estás buscando un método de isocalendario similar a Python, puedes usar el complemento de Rocky Meza

moment-isocalendar

Llamar al método isocalendar en un moment devolverá un array como el siguiente:

[year, week_of_year, day_of_week, minutes_since_midnight]

JavaScript
moment().isocalendar(); // [2012, 8, 5, 870]

También puedes reconstruir un moment a partir de un array isocalendaria.

JavaScript
moment.fromIsocalendar([2011, 51, 5, 870]).format('LLLL');
// "Friday, December 23 2011 2:30 PM"

El repositorio está ubicado en github.com/fusionbox/moment-isocalendar.

El complemento Jalaali Calendar

Firma del método
npm install moment-jalaali

Si deseas trabajar con el sistema de calendario Jalaali (Jalali, persa, Khorshidi o Shamsi), puedes utilizar el complemento moment-jalaali de Behrang Noruzi Niya.

Cuando se instale, envolverá el objeto moment y moment podrá formatear y analizar años y meses de Jalaali. Aquí hay un breve ejemplo:

JavaScript
var m = moment('1360/5/26', 'jYYYY/jM/jD'); // Parse a Jalaali date.
m.format('jYYYY/jM/jD [is] YYYY/M/D'); // 1360/5/26 is 1981/8/17

El repositorio está ubicado en github.com/behrang/moment-jalaali.

Última actualización