A Jalali to Gregorian converter in JavaScript with support of formatting output
Install via NPM/Yarn:
npm install jalali-date
You could grab the latest version from lib
directory and use it:
<head>
<script src="jdate.js" type="text/javascript" charset="utf-8"></script>
<script src="jdate.min.js" type="text/javascript" charset="utf-8"></script>
</head>
The full-version is useful for debugging. You may want to use minified version in production as it is smaller.
For initializing JDate
you may either pass an array of Jalali date to it or a Date
object. If no parameter is passed, the default is today:
const JDate = require('jalali-date');
const jdate = new JDate; // => default to today
const jdate2 = new JDate(1393, 10, 11);
const jdate3 = new JDate([1393, 10, 11]);
const jdate4 = new JDate(new Date(2014, 1, 3));
jdate.date //=> [1393, 5, 13] An Array of Jalali Date
jdate._d // => Gregorian Date Object
// Getters
jdate.getFullYear() // => 1393
jdate.getMonth() // => 5
jdate.getDate() // => 13
jdate.getDay() // => 1
// Setters
jdate.setFullYear(1394)
jdate.setMonth(6)
jdate.setDate(12)
// Formatting output
jdate.format('dddd DD MMMM YYYY') // => پنجشنبه 12 شهریور 1394
// Static functions
JDate.isLeapYear(1393) // => false
JDate.daysInMonth(1393, 5) // => 31
JDate.toGregorian(1393, 12, 11) // => Gregorian Date object
JDate.toJalali(new Date) // => JDate object
Use format()
and following conversion identifiers as follows:
date.format('dddd DD MMMM YYYY') //=> دوشنبه 6 امرداد 1393
The conversion identifiers are as follows:
Identifier | Description | Example |
---|---|---|
YYY or YYYY |
Full Year (4 digits) | 1393 |
YY |
Year (2 digits) | 93 |
M |
Month in number | returns 5 for امرداد |
MM |
Month in number | returns 05 for امرداد |
MMM or MMMM |
Month in string | امرداد |
D |
Day in number | 26 |
DD |
Day in number | 06 |
d or dd |
Abbreviation of day name in string | ۱ش (for یکشنبه) |
ddd or dddd |
Full day name in string | یکشنبه |
Report bugs and suggest feature in issue tracker. Feel free to Fork
and send Pull Requests
.