การจัดรูปแบบวันที่
คำอธิบายไวยากรณ์
ฟังก์ชันนี้ใช้สำหรับจัดรูปแบบวันที่ โดยรับ patternOut เป็นรูปแบบสำหรับแสดงผล และ patternIn เป็นรูปแบบของข้อมูลนำเข้า (ค่าเริ่มต้นคือ ISO 8601) ครับ/ค่ะ คุณสามารถปรับเขตเวลาและภาษาได้ผ่าน options.timezone และ options.lang ครับ/ค่ะ
ตัวอย่างการใช้งาน
// สภาพแวดล้อมตัวอย่าง: ตัวเลือก API { "lang": "en-us", "timezone": "Europe/Paris" }
'20160131':formatD(L) // จะแสดงผล 01/31/2016
'20160131':formatD(LL) // จะแสดงผล January 31, 2016
'20160131':formatD(LLLL) // จะแสดงผล Sunday, January 31, 2016 12:00 AM
'20160131':formatD(dddd) // จะแสดงผล Sunday
// ตัวอย่างภาษาฝรั่งเศส:
'2017-05-10T15:57:23.769561+03:00':formatD(LLLL) // จะแสดงผล mercredi 10 mai 2017 14:57
'20160131':formatD(LLLL) // จะแสดงผล dimanche 31 janvier 2016 00:00
1410715640:formatD(LLLL, X) // จะแสดงผล dimanche 14 septembre 2014 19:27
ผลลัพธ์
ผลลัพธ์ที่ได้คือสตริงวันที่ในรูปแบบที่ระบุครับ/ค่ะ
2. :addD(amount, unit, patternIn)
คำอธิบายไวยากรณ์
ฟังก์ชันนี้ใช้สำหรับเพิ่มระยะเวลาที่ระบุลงในวันที่ครับ/ค่ะ หน่วยที่รองรับได้แก่: day, week, month, quarter, year, hour, minute, second, millisecond
พารามิเตอร์:
amount: จำนวนที่ต้องการเพิ่ม
unit: หน่วยเวลา (ไม่คำนึงถึงตัวพิมพ์เล็ก-ใหญ่)
patternIn: (ไม่บังคับ) รูปแบบข้อมูลนำเข้า ค่าเริ่มต้นคือ ISO8601
ตัวอย่างการใช้งาน
// สภาพแวดล้อมตัวอย่าง: ตัวเลือก API { "lang": "fr", "timezone": "Europe/Paris" }
'2017-05-10T15:57:23.769561+03:00':addD('3', 'day') // จะแสดงผล "2017-05-13T12:57:23.769Z"
'2017-05-10 15:57:23.769561+03:00':addD('3', 'month') // จะแสดงผล "2017-08-10T12:57:23.769Z"
'20160131':addD('3', 'day') // จะแสดงผล "2016-02-03T00:00:00.000Z"
'20160131':addD('3', 'month') // จะแสดงผล "2016-04-30T00:00:00.000Z"
'31-2016-01':addD('3', 'month', 'DD-YYYY-MM') // จะแสดงผล "2016-04-30T00:00:00.000Z"
ผลลัพธ์
ผลลัพธ์ที่ได้คือวันที่ใหม่หลังจากเพิ่มระยะเวลาที่ระบุครับ/ค่ะ
3. :subD(amount, unit, patternIn)
คำอธิบายไวยากรณ์
ฟังก์ชันนี้ใช้สำหรับลบระยะเวลาที่ระบุออกจากวันที่ครับ/ค่ะ พารามิเตอร์เหมือนกับฟังก์ชัน addD
ตัวอย่างการใช้งาน
// สภาพแวดล้อมตัวอย่าง: ตัวเลือก API { "lang": "fr", "timezone": "Europe/Paris" }
'2017-05-10T15:57:23.769561+03:00':subD('3', 'day') // จะแสดงผล "2017-05-07T12:57:23.769Z"
'2017-05-10 15:57:23.769561+03:00':subD('3', 'month') // จะแสดงผล "2017-02-10T12:57:23.769Z"
'20160131':subD('3', 'day') // จะแสดงผล "2016-01-28T00:00:00.000Z"
'20160131':subD('3', 'month') // จะแสดงผล "2015-10-31T00:00:00.000Z"
'31-2016-01':subD('3', 'month', 'DD-YYYY-MM') // จะแสดงผล "2015-10-31T00:00:00.000Z"
ผลลัพธ์
ผลลัพธ์ที่ได้คือวันที่ใหม่หลังจากลบระยะเวลาที่ระบุครับ/ค่ะ
4. :startOfD(unit, patternIn)
คำอธิบายไวยากรณ์
ฟังก์ชันนี้ใช้สำหรับกำหนดวันที่ให้เป็นจุดเริ่มต้นของหน่วยเวลาที่ระบุครับ/ค่ะ
พารามิเตอร์:
unit: หน่วยเวลา
patternIn: (ไม่บังคับ) รูปแบบข้อมูลนำเข้า
ตัวอย่างการใช้งาน
// สภาพแวดล้อมตัวอย่าง: ตัวเลือก API { "lang": "fr", "timezone": "Europe/Paris" }
'2017-05-10T15:57:23.769561+03:00':startOfD('day') // จะแสดงผล "2017-05-10T00:00:00.000Z"
'2017-05-10 15:57:23.769561+03:00':startOfD('month') // จะแสดงผล "2017-05-01T00:00:00.000Z"
'20160131':startOfD('day') // จะแสดงผล "2016-01-31T00:00:00.000Z"
'20160131':startOfD('month') // จะแสดงผล "2016-01-01T00:00:00.000Z"
'31-2016-01':startOfD('month', 'DD-YYYY-MM') // จะแสดงผล "2016-01-01T00:00:00.000Z"
ผลลัพธ์
ผลลัพธ์ที่ได้คือสตริงวันที่ที่เป็นจุดเริ่มต้นของหน่วยเวลาที่ระบุครับ/ค่ะ
5. :endOfD(unit, patternIn)
คำอธิบายไวยากรณ์
ฟังก์ชันนี้ใช้สำหรับกำหนดวันที่ให้เป็นจุดสิ้นสุดของหน่วยเวลาที่ระบุครับ/ค่ะ พารามิเตอร์เหมือนกับฟังก์ชัน startOfD
ตัวอย่างการใช้งาน
// สภาพแวดล้อมตัวอย่าง: ตัวเลือก API { "lang": "fr", "timezone": "Europe/Paris" }
'2017-05-10T15:57:23.769561+03:00':endOfD('day') // จะแสดงผล "2017-05-10T23:59:59.999Z"
'2017-05-10 15:57:23.769561+03:00':endOfD('month') // จะแสดงผล "2017-05-31T23:59:59.999Z"
'20160131':endOfD('day') // จะแสดงผล "2016-01-31T23:59:59.999Z"
'20160131':endOfD('month') // จะแสดงผล "2016-01-31T23:59:59.999Z"
'31-2016-01':endOfD('month', 'DD-YYYY-MM') // จะแสดงผล "2016-01-31T23:59:59.999Z"
ผลลัพธ์
ผลลัพธ์ที่ได้คือสตริงวันที่ที่เป็นจุดสิ้นสุดของหน่วยเวลาที่ระบุครับ/ค่ะ
6. :diffD(toDate, unit, patternFromDate, patternToDate)
คำอธิบายไวยากรณ์
ฟังก์ชันนี้ใช้สำหรับคำนวณความแตกต่างระหว่างสองวันที่ และแสดงผลในหน่วยที่ระบุครับ/ค่ะ
หน่วยที่รองรับสำหรับการแสดงผลได้แก่:
day(s) หรือ d: วัน
week(s) หรือ w: สัปดาห์
quarter(s) หรือ Q: ไตรมาส
month(s) หรือ M: เดือน
year(s) หรือ y: ปี
hour(s) หรือ h: ชั่วโมง
minute(s) หรือ m: นาที
second(s) หรือ s: วินาที
millisecond(s) หรือ ms: มิลลิวินาที (หน่วยเริ่มต้น)
พารามิเตอร์:
toDate: วันที่เป้าหมาย
unit: หน่วยสำหรับแสดงผล
patternFromDate: (ไม่บังคับ) รูปแบบของวันที่เริ่มต้น
patternToDate: (ไม่บังคับ) รูปแบบของวันที่เป้าหมาย
ตัวอย่างการใช้งาน
'20101001':diffD('20101201') // จะแสดงผล 5270400000
'20101001':diffD('20101201', 'second') // จะแสดงผล 5270400
'20101001':diffD('20101201', 's') // จะแสดงผล 5270400
'20101001':diffD('20101201', 'm') // จะแสดงผล 87840
'20101001':diffD('20101201', 'h') // จะแสดงผล 1464
'20101001':diffD('20101201', 'weeks') // จะแสดงผล 8
'20101001':diffD('20101201', 'days') // จะแสดงผล 61
'2010+10+01':diffD('2010=12=01', 'ms', 'YYYY+MM+DD', 'YYYY=MM=DD') // จะแสดงผล 5270400000
ผลลัพธ์
ผลลัพธ์ที่ได้คือความแตกต่างของเวลาระหว่างสองวันที่ โดยแปลงเป็นหน่วยที่ระบุครับ/ค่ะ
7. :convDate(patternIn, patternOut)
คำอธิบายไวยากรณ์
ฟังก์ชันนี้ใช้สำหรับแปลงวันที่จากรูปแบบหนึ่งไปเป็นอีกรูปแบบหนึ่งครับ/ค่ะ (ไม่แนะนำให้ใช้)
พารามิเตอร์:
patternIn: รูปแบบวันที่นำเข้า
patternOut: รูปแบบวันที่สำหรับแสดงผล
ตัวอย่างการใช้งาน
// สภาพแวดล้อมตัวอย่าง: ตัวเลือก API { "lang": "en", "timezone": "Europe/Paris" }
'20160131':convDate('YYYYMMDD', 'L') // จะแสดงผล "01/31/2016"
'20160131':convDate('YYYYMMDD', 'LL') // จะแสดงผล "January 31, 2016"
'20160131':convDate('YYYYMMDD', 'LLLL') // จะแสดงผล "Sunday, January 31, 2016 12:00 AM"
'20160131':convDate('YYYYMMDD', 'dddd') // จะแสดงผล "Sunday"
1410715640:convDate('X', 'LLLL') // จะแสดงผล "Sunday, September 14, 2014 7:27 PM"
// ตัวอย่างภาษาฝรั่งเศส:
'20160131':convDate('YYYYMMDD', 'LLLL') // จะแสดงผล "dimanche 31 janvier 2016 00:00"
'20160131':convDate('YYYYMMDD', 'dddd') // จะแสดงผล "dimanche"
ผลลัพธ์
ผลลัพธ์ที่ได้คือสตริงวันที่ที่ถูกแปลงรูปแบบแล้วครับ/ค่ะ
8. รูปแบบการจัดวันที่
คำอธิบายรูปแบบวันที่ที่ใช้บ่อย (อ้างอิงจากเอกสาร DayJS):
X: Unix timestamp (หน่วยวินาที) เช่น 1360013296
x: Unix timestamp (หน่วยมิลลิวินาที) เช่น 1360013296123
YY: ปีแบบสองหลัก เช่น 18
YYYY: ปีแบบสี่หลัก เช่น 2018
M, MM, MMM, MMMM: เดือน (ตัวเลข, สองหลัก, ตัวย่อ, ชื่อเต็ม)
D, DD: วันที่ (ตัวเลข, สองหลัก)
d, dd, ddd, dddd: วันในสัปดาห์ (ตัวเลข, แบบย่อที่สุด, แบบย่อ, ชื่อเต็ม)
H, HH, h, hh: ชั่วโมง (แบบ 24 ชั่วโมง หรือ 12 ชั่วโมง)
m, mm: นาที
s, ss: วินาที
SSS: มิลลิวินาที (3 หลัก)
Z, ZZ: UTC offset เช่น +05:00 หรือ +0500
A, a: AM/PM
Q: ไตรมาส (1-4)
Do: วันที่พร้อมลำดับ เช่น 1st, 2nd, …
- สำหรับรูปแบบอื่นๆ โปรดดูเอกสารฉบับเต็มครับ/ค่ะ
นอกจากนี้ ยังมีรูปแบบที่ปรับตามภาษาท้องถิ่น เช่น
LT, LTS, L, LL, LLL, LLLL เป็นต้น ครับ/ค่ะ