项目作者: ImanFarahi

项目描述 :
Javascript Farsi Date Extension
高级语言:
项目地址: git://github.com/ImanFarahi/farsidate.js.git
创建时间: 2018-10-07T13:30:54Z
项目社区:https://github.com/ImanFarahi/farsidate.js

开源协议:MIT License

下载


farsidate.js | تاریخ فارسی

Javascript Farsi Date Extension


WebSite: http://farsidate.ir


version: 1.0.2

Farsi Date

size: 10 KB

Browser

  1. <script src="./dist/farsidate-1.0.2.min.js" type="text/javascript"></script>
  2. <p id="demo"></p>
  3. <script type="text/javascript">
  4. var date = new Date().fa().toString('yyyy'); // 1397
  5. document.getElementById("demo").innerHTML = date;
  6. </script>

Chaining

  1. console.log(new Date().fa(1397,1,15).norm().toISODate()); // 2018-5-5
  2. console.log(new Date().fa(1397,1,15).addDays(3).addMonths(1).addYears(-1).norm().toISODate()); // 2017-6-8

Example Usage

fa() main method

  1. var fD1 = new Date('2018-11-13').fa();
  2. console.log('year: '+ fD1.getFullYear()); // year: 1397
  3. console.log('month: '+ fD1.getMonth()); // month: 7 (0-11)
  4. console.log('date: '+ fD1.getDate()); // date: 22
  5. fD2 = new Date().fa(1396, 8, 21);
  6. console.log('year: '+ fD2.getFullYear()); // year: 1396
  7. console.log('month: '+ fD2.getMonth()); // month: 8
  8. console.log('date: '+ fD2.getDate()); // date: 21
  9. var fD3 = new Date().fa(fD2);
  10. console.log('year: '+ fD3.getFullYear()); // year: 1396
  11. console.log('month: '+ fD3.getMonth()); // month: 8
  12. console.log('date: '+ fD3.getDate()); // date: 21

norm() method

  1. var fD = new Date('2018-11-13').fa();
  2. console.log('year: '+ fD.getFullYear()); // year: 1397
  3. console.log('month: '+ fD.getMonth()); // month: 7
  4. console.log('date: '+ fD.getDate()); // date: 22
  5. console.log('year: '+ fD.norm().getFullYear()); // year: 2018

getCacheDate() method

  1. var fD = new Date('2018-11-13').fa();
  2. console.log('year: '+ fD.getFullYear()); // year: 1397
  3. console.log('month: '+ fD.getMonth()); // month: 7 (0-11)
  4. console.log('date: '+ fD.getDate()); // date: 22
  5. console.log('year: '+ fD.getCacheDate().getFullYear()); // year: 2018

toString() method

  1. var date = new Date();
  2. console.log('s: '+ date.fa().toString('s')); // s: 0
  3. console.log('ss: '+date.fa().toString('ss')); // ss: 00
  4. console.log('m: '+date.fa().toString('m')); // m: 4
  5. console.log('mm: '+date.fa().toString('mm')); // mm: 04
  6. console.log('h: '+date.fa().toString('h')); // h: 2
  7. console.log('hh: '+date.fa().toString('hh')); // h: 02
  8. console.log('H: '+date.fa().toString('H')); // H: 2
  9. console.log('HH: '+date.fa().toString('HH')); // HH: 02
  10. console.log('d: '+date.fa().toString('d')); // d: 19
  11. console.log('dd: '+date.fa().toString('dd')); // dd: 19
  12. console.log('ddd: '+date.fa().toString('ddd')); // ddd: چ
  13. console.log('dddd: '+date.fa().toString('dddd')); // dddd: چهار شنبه
  14. console.log('M: '+date.fa().toString('M')); // M: 10 (1-12)
  15. console.log('MM: '+date.fa().toString('MM')); // MM: 10 (1-12)
  16. console.log('MMM: '+date.fa().toString('MMM')); // MMM: دی
  17. console.log('MMMM: '+date.fa().toString('MMMM')); // MMMM: دی
  18. console.log('yy: '+date.fa().toString('yy')); // yy: 97
  19. console.log('yyyy: '+date.fa().toString('yyyy')); // yyyy: 1397
  20. console.log('t: '+date.fa().toString('t')); // t: A
  21. console.log('tt: '+date.fa().toString('tt')); // tt: AM
  22. console.log(date.fa().toString()); // چ دی 19 1397 04:30:57 GMT+0330 (Iran Standard Time)

Converting to String

Note The format parameter is optional with the .toString() function.

Standard Date and Time Format Specifiers

Format Description Example
s The seconds of the minute between 0-59. “0” to “59”
ss The seconds of the minute with leading zero if required. “00” to “59”
m The minute of the hour between 0-59. “0” or “59”
mm The minute of the hour with leading zero if required. “00” or “59”
h The hour of the day between 1-12. “1” to “12”
hh The hour of the day with leading zero if required. “01” to “12”
H The hour of the day between 0-23. “0” to “23”
HH The hour of the day with leading zero if required. “00” to “23”
d The day of the month between 1 and 31. “1” to “31”
dd The day of the month with leading zero if required. “01” to “31”
ddd Abbreviated day name. Date.!CultureInfo.abbreviatedDayNames. “چ” to “پ”
dddd The full day name. Date.!CultureInfo.dayNames. “چهارشنبه” to “پنج شنبه”
M The month of the year between 1-12. “1” to “12”
MM The month of the year with leading zero if required. “01” to “12”
MMM Abbreviated month name. Date.!CultureInfo.abbreviatedMonthNames. “شهر” to “مرد”
MMMM The full month name. Date.!CultureInfo.monthNames. “شهریور” to “مرداد”
yy Displays the year as a two-digit number. “97” or “98”
yyyy Displays the full four digit year. “1397” or “1398”
t Displays the first character of the A.M./P.M. “A” or “P”
tt Displays the A.M./P.M. designator. “AM” or “PM”

clearTime() method

  1. var fD = new Date().fa();
  2. console.log(fD.getHours()); // 2
  3. console.log(fD.clearTime().getHours()); // 0

setTimeToNow() method

  1. var fD = new Date().fa().setHours(3);
  2. console.log(fD.getHours()); // 3
  3. console.log(fD.setTimeToNow().getHours()); // 2

today() method

  1. var fD = new Date().fa().setHours(3);
  2. console.log(fD.getHours()); // 3
  3. console.log(fD.today().getHours()); // 0

setFullYear() method

  1. var fD = new Date().fa();
  2. console.log(fD.setFullYear(1398).isLeap()); // false
  3. console.log(fD.setFullYear(1399).isLeap()); // true

getDaysInMonth() method

  1. var fD = new Date().fa(1397,1,1);
  2. console.log(fD.setMonth(0).getDaysInMonth()); // 31
  3. console.log(fD.setMonth(11).getDaysInMonth()); // 29

startOfMonth() method

  1. var fD = new Date().fa(1397,1,15); // month (0-11)
  2. console.log(fD.startOfMonth().toISODate()); // 1397-02-01 - month (1-12)

addDays() method

  1. var fD = new Date().fa(1397,1,15).addDays(3).addDays(-1);
  2. console.log(fD.toString('dd')); // 17

addWeeks() method

  1. var fD = new Date().fa(1397,1,15).addDays(3).addWeeks(1);
  2. console.log(fD.toString('dd')); // 25

addMonths() method

  1. var fD = new Date().fa(1397,1,15)
  2. console.log(fD.toString('MM')); // 02
  3. console.log(fD.addDays(3).addMonths(1).toString('MM')); // 03

addYears() method

  1. var fD = new Date().fa(1397,1,15)
  2. console.log(fD.toString('yyyy MM')); // 1397 02
  3. console.log(fD.addDays(3).addMonths(1).addYears(1).toString('yyyy MM')); // 1398 03

startOfWeek() method

  1. var fD = new Date().fa(1397,9,19)
  2. console.log(fD.toString('yyyy MM dd')); // 1397 10 19
  3. console.log(fD.startOfWeek().toString('yyyy MM dd')); // 1397 10 15

clone() method

  1. var fD = new Date().fa(1397,9,19)
  2. console.log(fD.toString('yyyy MM dd')); // 1397 10 19
  3. console.log(fD.clone().startOfWeek().toString('yyyy MM dd')); // 1397 10 15
  4. console.log(fD.toString('yyyy MM dd')); // 1397 10 19

getDaysOfMonth() method

  1. var w1 ,w2 ,w3 ,w4 ,w5 ,w6;
  2. [w1 ,w2 ,w3 ,w4 ,w5 ,w6] = new Date().fa().getDaysOfMonth();

getDaysOfWeek() method

  1. var Sat ,Sun ,Mon ,Tue ,Wed ,Thu ,Fri;
  2. [Sat ,Sun ,Mon ,Tue ,Wed ,Thu ,Fri] = new Date().fa().getDaysOfWeek();

toFarsiDigits() method

  1. var fD = new Date().fa(1397,9,19)
  2. console.log(fD.toString('ddd. d MMMM yyyy').toFarsiDigits()); //چ. ۱۹ دی ۱۳۹۷
  3. console.log('1234'.toFarsiDigits()); // ۱۲۳۴

isDate() method

  1. console.log(Date.isDate("2018-10-11")); // false
  2. console.log(Date.isDate(new Date())); // true
  3. console.log(Date.isDate(new Date("2018-10-11"))); // true
  4. console.log(Date.fa.isDate(new Date().fa())); // true
  5. console.log(Date.fa.isDate(new Date())); // false

toISODate() method

  1. var date= new Date('11/13/2018');
  2. console.log('ISO Date: '+ date.toISODate()); // ISO Date: 2018-11-13
  3. console.log('fa ISO Date: '+ date.fa().toISODate()); // fa ISO Date: 1397-08-22

Other methods

All Date methods