รูปแบบวันที่ของ JavaScript
การป้อนวันที่ของจาวาสคริปต์
รูปแบบการป้อนวันที่ของ JavaScript โดยทั่วไปมี 3 ประเภท:
พิมพ์ | ตัวอย่าง |
---|---|
ISO วันที่ | "2015-03-25" (มาตรฐานสากล) |
วันที่สั้น | "03/25/2558" |
วันที่ยาวนาน | "25 มี.ค. 2558" หรือ "25 มี.ค. 2558" |
รูปแบบ ISO เป็นไปตามมาตรฐานที่เข้มงวดใน JavaScript
รูปแบบอื่นไม่ได้กำหนดไว้อย่างดีและอาจเฉพาะเบราว์เซอร์
เอาต์พุตวันที่ของ JavaScript
โดยไม่คำนึงถึงรูปแบบอินพุต JavaScript จะ (โดยค่าเริ่มต้น) เอาต์พุตวันที่ในรูปแบบสตริงข้อความแบบเต็ม:
Sat Jan 29 2022 16:38:41 GMT+0000 (Coordinated Universal Time)
JavaScript ISO วันที่
ISO 8601 เป็นมาตรฐานสากลสำหรับการแสดงวันที่และเวลา
ไวยากรณ์ ISO 8601 (YYYY-MM-DD) เป็นรูปแบบวันที่ของ JavaScript ที่ต้องการเช่นกัน:
ตัวอย่าง (วันที่เสร็จสมบูรณ์)
const d = new Date("2015-03-25");
วันที่ที่คำนวณจะสัมพันธ์กับเขตเวลาของคุณ
ผลลัพธ์ข้างต้นจะแตกต่างกันไประหว่างวันที่ 24 มีนาคมถึง 25 มีนาคมทั้งนี้ขึ้นอยู่กับเขตเวลาของคุณ
วันที่ ISO (ปีและเดือน)
วันที่ ISO สามารถเขียนได้โดยไม่ต้องระบุวัน (ปปปป-ดด):
ตัวอย่าง
const d = new Date("2015-03");
เขตเวลาจะเปลี่ยนแปลงผลลัพธ์ข้างต้นระหว่างวันที่ 28 กุมภาพันธ์ถึงวันที่ 1 มีนาคม
วันที่ ISO (ปีเท่านั้น)
วันที่ ISO สามารถเขียนได้โดยไม่มีเดือนและวัน (YYYY):
ตัวอย่าง
const d = new Date("2015");
เขตเวลาจะเปลี่ยนแปลงผลลัพธ์ข้างต้นระหว่าง 31 ธันวาคม 2014 ถึง 1 มกราคม 2015
วันที่ ISO (วันที่-เวลา)
วันที่ ISO สามารถเขียนด้วยชั่วโมง นาที และวินาทีที่เพิ่มได้ (YYYY-MM-DDTHH:MM:SSZ):
ตัวอย่าง
const d = new Date("2015-03-25T12:00:00Z");
วันที่และเวลาคั่นด้วยตัวพิมพ์ใหญ่ T.
เวลา UTC ถูกกำหนดด้วยอักษรตัวพิมพ์ใหญ่ Z
หากคุณต้องการแก้ไขเวลาที่สัมพันธ์กับ UTC ให้ลบ Z และเพิ่ม +HH:MM หรือ -HH:MM แทน:
ตัวอย่าง
const d = new Date("2015-03-25T12:00:00-06:30");
UTC (เวลาสากลเชิงพิกัด) จะเหมือนกับ GMT (เวลามาตรฐานกรีนิช)
การละเว้น T หรือ Z ในสตริงวันที่-เวลาสามารถให้ผลลัพธ์ที่แตกต่างกันในเบราว์เซอร์ต่างๆ
โซนเวลา
เมื่อตั้งค่าวันที่โดยไม่ระบุเขตเวลา JavaScript จะใช้เขตเวลาของเบราว์เซอร์
เมื่อได้รับวันที่โดยไม่ระบุเขตเวลา ผลลัพธ์จะถูกแปลงเป็นเขตเวลาของเบราว์เซอร์
กล่าวอีกนัยหนึ่ง: หากวันที่/เวลาถูกสร้างขึ้นใน GMT (เวลามาตรฐานกรีนิช) วันที่/เวลาจะถูกแปลงเป็น CDT (เวลาออมแสงตอนกลางของสหรัฐฯ) หากผู้ใช้เรียกดูจากตอนกลางของสหรัฐฯ
JavaScript วันที่สั้น ๆ
วันที่แบบสั้นเขียนด้วยไวยากรณ์ "MM/DD/YYYY" ดังนี้:
ตัวอย่าง
const d = new Date("03/25/2015");
คำเตือน !
ในบางเบราว์เซอร์ เดือนหรือวันที่ไม่มีเลขศูนย์นำหน้าอาจทำให้เกิดข้อผิดพลาด:
const d = new Date("2015-3-25");
ไม่ได้กำหนดลักษณะการทำงานของ "ปปปป/ดด/วว"
เบราว์เซอร์บางตัวจะพยายามเดารูปแบบ บางส่วนจะคืน NaN
const d = new Date("2015/03/25");
พฤติกรรมของ "DD-MM-YYYY" ก็ยังไม่ได้กำหนดเช่นกัน
เบราว์เซอร์บางตัวจะพยายามเดารูปแบบ บางส่วนจะคืน NaN
const d = new Date("25-03-2015");
JavaScript วันที่แบบยาว
วันที่แบบยาวมักเขียนด้วยไวยากรณ์ "MMM DD YYYY" ดังนี้:
ตัวอย่าง
const d = new Date("Mar 25 2015");
เดือนและวันสามารถอยู่ในลำดับใดก็ได้:
ตัวอย่าง
const d = new Date("25 Mar 2015");
และเดือนสามารถเขียนเต็ม (มกราคม) หรือตัวย่อ (ม.ค. ):
ตัวอย่าง
const d = new Date("January 25 2015");
ตัวอย่าง
const d = new Date("Jan 25 2015");
เครื่องหมายจุลภาคจะถูกละเว้น ชื่อไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่:
ตัวอย่าง
const d = new Date("JANUARY, 25, 2015");
อินพุตวันที่ - การแยกวิเคราะห์วันที่
หากคุณมีสตริงวันที่ที่ถูกต้อง คุณสามารถใช้
Date.parse()
วิธีการแปลงเป็นมิลลิวินาทีได้
Date.parse()
ส่งกลับจำนวนมิลลิวินาทีระหว่างวันที่ถึงวันที่ 1 มกราคม 1970:
ตัวอย่าง
let msec = Date.parse("March 21, 2012");
คุณสามารถใช้จำนวนมิลลิวินาทีเพื่อแปลงเป็นวัตถุวันที่ได้:
ตัวอย่าง
let msec = Date.parse("March 21, 2012");
const d = new Date(msec);
อ้างอิงวันที่ JavaScript ที่สมบูรณ์
สำหรับการอ้างอิงวันที่ฉบับสมบูรณ์ ไปที่:
อ้างอิงวันที่ของ JavaScriptให้สมบูรณ์
ข้อมูลอ้างอิงประกอบด้วยคำอธิบายและตัวอย่างของคุณสมบัติและเมธอดของ Date ทั้งหมด