Moment.js Jalaali日历插件
moment-jalaali 是一个 Moment.js 插件,允许我们使用moment.js库的工具和方法与Jalaali日历系统一起使用。这个日历系统在波斯使用,在伊朗和阿富汗仍然有不同变体的使用。
插件的安装:
npm install moment-jalaali
语法:
const moment = require('moment-jalaali');
moment().format('jYYYY/jM/jD');
注意: 解析日期时,使用数据类型字符串,将“j”传递给格式令牌。例如,对于年份,使用“jYYYY”,对于月份,使用“jM”。
示例1:
const moment = require('moment-jalaali');
// Parse a Jalaali date
const m = moment('1360/5/26', 'jYYYY/jM/jD')
// 1360/5/26 is 1981/8/17
console.log(m.format('jYYYY/jM/jD [is] YYYY/M/D'))
输出:
1360/5/26 is 1981/8/17
示例2:
const moment = require('moment-jalaali');
// This returns true as it is leap year
console.log(moment('1391/12/30', 'jYYYY/jMM/jDD').isValid())
// This returns false as it is common year
console.log(moment('1392/12/30', 'jYYYY/jMM/jDD').isValid())
输出:
true
false
示例3:
const moment = require('moment-jalaali');
// 2013-8-25 16:40:00
console.log(moment('1392/6/3 16:40', 'jYYYY/jM/jD HH:mm')
.format('YYYY-M-D HH:mm:ss'))
// 1392/6/31 23:59:59
console.log(moment('2013-8-25 16:40:00', 'YYYY-M-D HH:mm:ss')
.endOf('jMonth').format('jYYYY/jM/jD HH:mm:ss'))
输出:
2013-8-25 16:40:00
1392/6/31 23:59:59
示例4:
const moment = require('moment-jalaali');
// Represents 1981/07/17
console.log(moment('1981 5 17', 'YYYY jM D').format('YYYY/MM/DD'))
输出:
1981/07/17
参考: https://momentjs.com/docs/#/plugins/jalaali/