วัตถุวันที่: ขึ้นอยู่กับจำนวนมิลลิวินาทีตั้งแต่วันที่ 1 มกราคม 1970 (UNF)
บทความนี้หมายถึงการรวบรวมรายละเอียดของ MDN เพื่อให้ทุกคนสามารถอ้างถึง MDN
ตัวสร้าง:
1. วันที่ใหม่ (); สร้างวัตถุวันที่ตามเวลาปัจจุบันที่กำหนดโดยระบบ
2. วันที่ใหม่ (มูลค่า); ค่าแสดงถึงจำนวนมิลลิวินาทีที่ผ่านไปตั้งแต่ 00:00:00 (เวลามาตรฐานของสหรัฐอเมริกา) ในวันที่ 1 มกราคม 1970
3. วันที่ใหม่ (Datestring); Datestring แสดงถึงค่าสตริงของวันที่ สตริงนี้ควรได้รับการยอมรับโดยวิธี date.parse () (สอดคล้องกับการประทับเวลา RFC 2822 ที่สอดคล้องกับ IETF หรือเวอร์ชันของ ISO8601)
4. วันที่ใหม่ (ปี, เดือน [, วัน [, ชั่วโมง [, นาที [, วินาที [, millionseconds [, Millionseconds]]]]]);
ปีที่หนึ่งปีหลังจากปี 1900 แสดงถึงมูลค่าจำนวนเต็มของปี เพื่อหลีกเลี่ยงปัญหา 2000 ควรระบุปี 4 หลัก ใช้ 1998 แทน 98
จำนวนเต็มระหว่างเดือน 0 ถึง 11 ซึ่งเป็นตัวแทนของเดือน (มกราคม) ถึงพฤศจิกายน (ธันวาคม)
จำนวนเต็มระหว่าง 1 ถึง 31 หมายถึงวันของเดือน
จำนวนเต็มระหว่างชั่วโมง 0 และ 23 ระบุชั่วโมง
นาทีเป็นจำนวนเต็มระหว่าง 0 ถึง 59 ซึ่งแสดงถึงนาที -
ครั้งที่สองเป็นจำนวนเต็มระหว่าง 0 ถึง 59 วินาที
มิลลิวินาทีจำนวนเต็มระหว่าง 0 ถึง 999 ซึ่งเป็นตัวแทนของค่าจำนวนเต็มของส่วนมิลลิวินาทีของเวลา
หากมีการจัดเตรียมพารามิเตอร์อย่างน้อยสองพารามิเตอร์พารามิเตอร์ที่เหลือจะถูกตั้งค่าเป็น 1 โดยค่าเริ่มต้น (หากไม่มีพารามิเตอร์วัน) หรือ 0
เวลาของ JavaScript เริ่มต้นเมื่อวันที่ 1 มกราคม 1970 กำหนดเวลาเป็นมิลลิวินาทีและหนึ่งวันประกอบด้วย 86,400,000 มิลลิวินาที ช่วงของวัตถุวันที่คือ -100,000,000 วันถึง 100,000,000 วัน (ค่ามิลลิวินาทีเทียบเท่า)
วัตถุวันที่ของ JavaScript ให้พฤติกรรมแบบครบวงจรสำหรับข้ามแพลตฟอร์ม แอตทริบิวต์เวลาสามารถเป็นตัวแทนของช่วงเวลาเดียวกันในระบบที่แตกต่างกันและหากใช้วัตถุเวลาในท้องถิ่นมันจะสะท้อนเวลาท้องถิ่น
วัตถุวันที่ของ JavaScript มีวิธีการใช้เวลา UTC หลายวิธีและยังให้วิธีการตามเวลาท้องถิ่นตามลำดับ UTC ซึ่งเป็นสิ่งที่เราเรียกว่า Greenwich Time หมายถึงมาตรฐานเวลาของโลกในเวลา เวลาท้องถิ่นหมายถึงเวลาที่กำหนดโดยคอมพิวเตอร์ไคลเอนต์ที่ดำเนินการ JavaScript
การเรียกวัตถุวันที่ของ JavaScript (โดยไม่ต้องใช้ตัวดำเนินการใหม่) ในรูปแบบของฟังก์ชั่นส่งคืนสตริงที่แสดงถึงวันที่และเวลาปัจจุบัน แทนที่จะเป็นวัตถุวันที่ นอกจากนี้ยังแตกต่างจากประเภท JavaScript อื่น ๆ วัตถุวันที่ไม่มีรูปแบบตัวอักษร
เมื่อวันที่ถูกเรียกว่าเป็นตัวสร้างและพารามิเตอร์หลายตัวจะถูกส่งผ่านหากค่ามากกว่าช่วงที่เหมาะสม (เช่น 13 เดือนหรือ 70 นาที) ค่าที่อยู่ติดกันจะถูกปรับ ตัวอย่างเช่นวันที่ใหม่ (2013, 13, 1) เท่ากับวันที่ใหม่ (2014, 1, 1) และพวกเขาทั้งหมดเป็นตัวแทนวันที่ 2014-02-01 (โปรดทราบว่าเดือนเริ่มตั้งแต่ 0) ค่าอื่น ๆ คล้ายกัน วันที่ใหม่ (2013, 2, 1, 0, 70) เท่ากับวันที่ใหม่ (2013, 2, 1, 1, 10) และทั้งคู่เป็นตัวแทนของเวลา 2013-03-01T01: 10: 00
เมื่อวันที่ถูกเรียกว่าเป็นตัวสร้างและพารามิเตอร์หลายตัวจะถูกส่งผ่านพารามิเตอร์ที่กำหนดจะแสดงเวลาท้องถิ่น หากจำเป็นต้องมีการประสานงานโลกให้ใช้วันที่ใหม่ ({{jsxref ("date.utc ()", "date.utc (... )")}}) และพารามิเตอร์เดียวกัน
คุณสมบัติ:
date.prototype: อนุญาตให้เพิ่มคุณสมบัติลงในวัตถุอินสแตนซ์วันที่
วันที่ความยาว: ค่าคือ 7 นี่คือจำนวนพารามิเตอร์ที่ยอมรับได้สำหรับตัวสร้างนี้
วันที่วิธีการคงที่:
Date.now () IE9
ส่งคืนจำนวนมิลลิวินาทีที่ผ่านไปตั้งแต่ปี 1970-1-1 00:00:00 UTC (เวลามาตรฐานเวลา) และเป็นหมายเลขประเภท
ในเบราว์เซอร์ที่รองรับคุณสมบัติเวลาความละเอียดสูงของ Web Performance API เวลาที่ผ่านไปจาก Window.performance ตอนนี้มีความน่าเชื่อถือและแม่นยำกว่าวันที่ตอนนี้
เข้ากันได้กับเบราว์เซอร์เก่า:
if (! date.now) {date.now = ฟังก์ชั่นตอนนี้ () {ส่งคืนวันที่ใหม่ (). getTime (); -date.parse ()
วิเคราะห์สตริงที่แสดงถึงวันที่และส่งคืนจำนวนมิลลิวินาทีที่ผ่านไปจากปี 1970-1-1 00:00:00 หากพารามิเตอร์ไม่สามารถแยกวิเคราะห์ได้ในวันที่ที่ถูกต้อง NAN จะถูกส่งคืน
วิธีการแยกวิเคราะห์ยอมรับสตริงวันที่ (ตัวอย่างเช่น "25 ธันวาคม 1995") และส่งคืนจำนวนมิลลิวินาทีจาก 1970-1-1 00:00:00 UTC ไปยังวันที่แสดงโดยสตริงวันที่ วิธีนี้มีประโยชน์เมื่อตั้งค่าวันที่ตามค่าสตริงเช่นการใช้เมธอด settime () และตัวสร้างวันที่ ()
วิธีนี้สามารถยอมรับสตริงที่สอดคล้องกับไวยากรณ์ RFC2822 / IETF (RFC2822 ส่วน 3.3) เช่น "จันทร์, 25 ธ.ค. 1995 13:30:00 GMT" วิธีนี้สามารถเข้าใจตัวย่อของเขตเวลาของสหรัฐอเมริกาแผ่นดินใหญ่ แต่เพื่อจุดประสงค์ทั่วไปควรใช้การชดเชยเขตเวลาเช่น "จันทร์ 25 ธ.ค. 2538 13:30:00 +0430" (เส้นเมอริเดียนของกรีนนิชถูกเลื่อนไปทางตะวันออก 4 ชั่วโมงและ 30 นาที) หากไม่มีการระบุเขตเวลาเขตเวลาท้องถิ่นจะถูกใช้โดยค่าเริ่มต้น
GMT และ UTC ถือว่าเท่ากัน หากรูปแบบ RFC2822 ส่วน 3.3 ไม่มีข้อมูลโซนเวลาสตริงวันที่จะถูกแยกวิเคราะห์ด้วยโซนเวลาท้องถิ่น
เนื่องจากมีการเบี่ยงเบนเมื่อแยกสายวันที่แยกกันจึงขอแนะนำให้แยกวิเคราะห์สตริงวันที่ด้วยตนเองโดยเฉพาะอย่างยิ่งการใช้งาน ECMASCript ที่แตกต่างกันจะแยกวิเคราะห์สตริงเช่น "2015-10-12 12:00:00" ลงใน NAN, UTC หรือเวลาท้องถิ่น
นอกจากนี้ยังสามารถใช้สตริงวันที่และเวลาในรูปแบบ ISO 8601 ตัวอย่างเช่น "2011-10-10" (วันที่เท่านั้น) หรือ "2011-10-10T14: 48: 00" (วันที่และเวลา) สามารถส่งผ่านและแยกวิเคราะห์เป็นพารามิเตอร์
date.utc ()
ยอมรับอาร์กิวเมนต์เดียวกับรูปแบบที่ยาวที่สุดของตัวสร้าง (จาก 2 ถึง 7) และส่งคืนจำนวนมิลลิวินาทีที่ผ่านมาจากปี 1970-01-01 00:00:00 UTC ของหมายเลขประเภท
คุณควรระบุรูปแบบเต็มรูปแบบเช่น 1998
วิธีวันที่ UTC ใช้ยุคโลกที่ประสานงานเพื่อแทนที่เวลาท้องถิ่น
เมธอดวันที่ UTC ส่งคืนค่าเวลาไม่ใช่วัตถุวันที่
หากมีพารามิเตอร์ที่ระบุซึ่งอยู่นอกช่วงที่เหมาะสมวิธี UTC จะอัปเดตพารามิเตอร์อื่น ๆ จนกว่าพารามิเตอร์จะอยู่ในช่วงที่เหมาะสม ตัวอย่างเช่นระบุ 15 สำหรับเดือนปีจะเพิ่ม 1 และเดือนจะถูกใช้ 3
วิธีการอินสแตนซ์วันที่:
วิธีการตามเวลาท้องถิ่น
วิธีรับเวลา:
date.prototype.getdate ()
ส่งคืนวันของเดือน (1-31) ของวัตถุวันที่ที่ระบุตามเวลาท้องถิ่น
date.prototype.getday ()
ส่งคืนวันของสัปดาห์ (0-6) ของวัตถุวันที่ที่ระบุตามเวลาท้องถิ่น
date.prototype.getlyear ()
ส่งคืนปีของวัตถุวันที่ที่ระบุตามเวลาท้องถิ่น วิธีนี้ส่งคืนปีสี่หลักจาก 1,000 ถึง 9999 ใช้วิธีนี้แทนวิธี getYear
date.prototype.getHours ()
ส่งคืนชั่วโมง (0-23) ของวัตถุวันที่ที่ระบุตามเวลาท้องถิ่น
date.prototype.getmilliseconds ()
ส่งคืนไมโครวินาที (0-999) ของวัตถุวันที่ที่ระบุตามเวลาท้องถิ่น
date.prototype.getMinutes ()
ส่งคืนนาทีของวัตถุวันที่ที่ระบุตามเวลาท้องถิ่น (0-59)
date.prototype.getMonth ()
ส่งคืนเดือน (0-11) ของวัตถุวันที่ที่ระบุตามเวลาท้องถิ่น
date.prototype.getSeconds ()
ส่งคืนจำนวนวินาที (0-59) ของวัตถุวันที่ที่ระบุตามเวลาท้องถิ่น
date.prototype.getTime ()
ส่งคืนจำนวนมิลลิวินาทีที่ผ่านมาจากปี 1970-1-1 00:00:00 UTC (เวลาสากลที่ประสานงานกัน) จนถึงวันนั้นประเภทจำนวนและส่งคืนค่าลบสำหรับเวลาก่อนปี 1970-1-1 00:00:00:00 UTC วิธีนี้มีฟังก์ชั่นเดียวกับวิธีการ Valueof ()
date.prototype.gettimezoneoffset ()
ส่งคืนความแตกต่างของเวลาระหว่างเวลาสากลที่มีการประสานงาน (UTC) เมื่อเทียบกับโซนเวลาปัจจุบันในไม่กี่นาที
Time-Zone Offset แสดงถึงความแตกต่างระหว่าง Coordinated Universal Time (UTC) และเขตเวลาท้องถิ่นในไม่กี่นาที ควรสังเกตว่าหากเขตเวลาในท้องถิ่นช้ากว่าเวลาของโลกที่ประสานงานความแตกต่างจะเป็นบวกและถ้ามันเร็วกว่าเวลาของโลกที่ประสานงานความแตกต่างก็จะเป็นลบ
วิธีการตั้งค่าเวลา: หากพารามิเตอร์หนึ่งเกินช่วงที่เหมาะสมวิธีการจะอัปเดตค่าพารามิเตอร์อื่น ๆ และค่าวันที่ของวัตถุวันที่จะได้รับการอัปเดตตามลำดับ
date.prototype.setDate (ค่า)
กำหนดวันของเดือนสำหรับวัตถุวันที่ที่ระบุตามเวลาท้องถิ่น
หากค่าเกินช่วงที่เหมาะสมของเดือน SetDate จะอัปเดตวัตถุวันที่ตามนั้น ตัวอย่างเช่นหากระบุ 0 สำหรับค่าวันที่จะถูกตั้งค่าเป็นวันสุดท้ายของเดือนก่อนหน้าซึ่งอาจเป็นจำนวนลบ
วันที่.
ตั้งค่าทั้งปีสำหรับวัตถุวันที่ที่ระบุตามเวลาท้องถิ่น (ปีสี่หลักคือสี่ตัวเลข)
YearValue ระบุมูลค่าจำนวนเต็มของปีเช่น 1995
ค่าใช้จ่ายค่าจำนวนเต็มระหว่าง 0 ถึง 11 ระบุตั้งแต่เดือนมกราคมถึงธันวาคม
DayValue ค่าจำนวนเต็มระหว่าง 1 ถึง 31 ระบุว่าวันใดของเดือน หากคุณระบุพารามิเตอร์ DayValue คุณต้องระบุค่ารายเดือนด้วย
หากไม่ได้ระบุพารามิเตอร์ MonthValue และ DayValue ค่าส่งคืนของวิธีการ getMonth และ getDate จะถูกนำมาใช้
date.prototype.sethours (HoursValue [, MinutesValue [, SecondSvalue [, msvalue]]]))))))))))))
ตั้งค่าจำนวนชั่วโมงสำหรับวัตถุวันที่ที่ระบุตามเวลาท้องถิ่น หากไม่ได้ระบุ MOLINESHUE, SecondSvalue และ MSValue พารามิเตอร์ค่าส่งคืนของ getMinutes (), getSeconds () และวิธีการ getMilliseconds ()
พารามิเตอร์เกินช่วงที่เหมาะสมการปรับอัตโนมัติและการอัปเดต
date.prototype.setMilliseconds ()
ตั้งค่าจำนวนมิลลิวินาทีสำหรับวัตถุวันที่ที่ระบุตามเวลาท้องถิ่น
date.prototype.setMinutes ()
ตั้งค่าจำนวนนาทีสำหรับวัตถุวันที่ที่ระบุตามเวลาท้องถิ่น
date.prototype.setMonth ()
ตั้งค่าเดือนสำหรับวัตถุวันที่ที่ระบุตามเวลาท้องถิ่น
date.prototype.setseconds ()
ตั้งค่าจำนวนวินาทีสำหรับวัตถุวันที่ที่ระบุตามเวลาท้องถิ่น
date.prototype.settime (timevalue)
ตั้งค่าเวลาของวัตถุวันที่โดยระบุจำนวนมิลลิวินาทีที่ผ่านไปจากปี 1970-1-1 00:00:00 UTC และสามารถใช้ค่าลบได้นานกว่าปี 1970-1-1 00:00:00 UTC ตัวอย่าง: SameBigday.Settime (newBigDay.getTime ());
วิธีมาตรฐานตามเวลาของโลก:
date.prototype.getutcdate ()
ขึ้นอยู่กับเวลาของโลกเป็นมาตรฐานส่งคืนวัตถุวันที่ที่ระบุในวันนั้นของเดือนโดยส่งคืนค่าจำนวนเต็ม 1 ถึง 31
date.prototype.getutcday ()
ขึ้นอยู่กับเวลาของโลกส่งคืนวัตถุวันที่ที่ระบุเป็นวันของสัปดาห์โดยที่ 0 แสดงถึงวันอาทิตย์
date.prototype.getUtculyear ()
ขึ้นอยู่กับเวลาของโลกจะส่งคืนปีของวัตถุวันที่ที่ระบุ วิธีนี้ส่งคืนปีสี่หลักจาก 1,000 ถึง 9999
date.prototype.getutchours ()
ขึ้นอยู่กับเวลาของโลกส่งคืนจำนวนชั่วโมงของวัตถุวันที่ที่ระบุ
date.prototype.getutcmilliseconds ()
ขึ้นอยู่กับเวลาของโลกส่งคืนจำนวนมิลลิวินาทีของวัตถุวันที่ที่ระบุ -
date.prototype.getutcminutes ()
ขึ้นอยู่กับเวลาของโลกส่งคืนจำนวนนาทีของวัตถุวันที่ที่ระบุ
date.prototype.getutcmonth ()
ขึ้นอยู่กับเวลาของโลกส่งคืนเดือนของวัตถุวันที่ที่ระบุซึ่งนับตั้งแต่ 0 (0 แสดงถึงเดือนแรกของปี)
date.prototype.getutcseconds ()
ขึ้นอยู่กับเวลาของโลกส่งคืนจำนวนวินาทีสำหรับวัตถุวันที่ที่ระบุ
date.prototype.setutcdate ()
กำหนดวันของเดือนในวัตถุวันที่ตามเวลาของโลก (1 ~ 31)
date.prototype.setutcfulyear ()
กำหนดปี (สี่หลัก) ในวัตถุวันที่ตามเวลาของโลก
date.prototype.setutchours ()
ตั้งค่าชั่วโมง (0 ~ 23) ในวัตถุวันที่ตามเวลาของโลก
date.prototype.setutcmilliseconds ()
ตั้งมิลลิวินาทีในวัตถุวันที่ตามเวลาของโลก (0 ~ 999)
date.prototype.setutcminutes ()
กำหนดนาทีในวัตถุวันที่ตามเวลาของโลก (0 ~ 59)
date.prototype.setutcmonth ()
ตั้งค่าเดือน (0 ~ 11) ในวัตถุวันที่ตามเวลาของโลก
date.prototype.setutcseconds ()
กำหนดวินาทีในวัตถุวันที่ตามเวลาของโลก (0 ~ 59)
การแปลงรูปแบบวันที่:
date.prototype.todatestring ()
ส่งคืนสตริงของส่วนวันที่ของวัตถุวันที่ในรูปแบบที่มนุษย์อ่านได้
date.prototype.toisostring () IE9
ส่งคืนสตริงในรูปแบบ ISO (ISO 8601 แบบขยาย) รูปแบบ: YYYY-MM-DDTHH: MM: SS.SSZ โซนเวลามักจะเป็น UTC (เวลาสากลที่มีการประสานงาน) พร้อมคำต่อท้าย "z" เพื่อระบุมัน
date.prototype.tojson ()
ส่งคืนสตริงรูปแบบ JSON (ใช้ TOISOSTRING ()) แทนค่าของวัตถุวันที่ โดยค่าเริ่มต้นวิธีนี้มักจะใช้เพื่อทำให้เป็นอนุกรมวัตถุวันที่โดย JSON - สำหรับใช้ในวิธี json.stringify ()
date.prototype.tolocaledatestring ()
ส่งคืนสตริงที่แสดงส่วนวันที่ของวัตถุวันที่และรูปแบบสตริงเชื่อมโยงกับชุดที่มีความละเอียดอ่อนในพื้นที่โดยระบบ อื่น ๆ เช่นเดียวกับ tolocaletimestring ()
date.prototype.tolocalestring ()
ส่งคืนสตริงที่แสดงถึงวัตถุวันที่ซึ่งเชื่อมโยงกับภูมิภาคที่กำหนดโดยระบบ แทนที่ method.prototype.tolocalestring () วิธี อื่น ๆ เช่นเดียวกับ tolocaletimestring ()
date.prototype.tolocaletimestring ([locales [, ตัวเลือก]])
ส่งคืนสตริงที่แสดงส่วนเวลาของวัตถุวันที่และรูปแบบสตริงเชื่อมโยงกับชุดที่มีความละเอียดอ่อนในพื้นที่โดยระบบ
วิธีการส่งคืนสตริงสำหรับส่วนวันที่ของวัตถุวันที่และรูปแบบของสตริงแตกต่างกันไปในแต่ละภาษาเป็นภาษา พารามิเตอร์ใหม่ (IE11 แต่ Safari ไม่ได้) สถานที่และตัวเลือกช่วยให้โปรแกรมสามารถระบุกฎการจัดรูปแบบภาษาที่จะใช้การปรับแต่งพฤติกรรมของวิธีการ ในเบราว์เซอร์ที่เก่ากว่าพารามิเตอร์สถานที่และตัวเลือกจะถูกละเว้นและสถานที่ที่ใช้และรูปแบบสตริงที่ส่งคืนถูกนำมาใช้อย่างอิสระ
ตรวจสอบส่วนความเข้ากันได้ของเบราว์เซอร์เพื่อดูว่าเบราว์เซอร์ใดที่รองรับพารามิเตอร์สถานที่และตัวเลือก นอกจากนี้คุณยังสามารถอ้างถึงตัวอย่าง: ตรวจจับการสนับสนุนของพารามิเตอร์สถานที่และตัวเลือก
เมื่อไม่ได้ระบุสถานที่ตั้งสตริงที่จัดรูปแบบโดยใช้การตั้งค่าตำแหน่งเริ่มต้นและการตั้งค่าการจัดรูปแบบ (ตัวเลือก)
พารามิเตอร์สถานที่และตัวเลือกไม่ได้รับการสนับสนุนโดยเบราว์เซอร์ทั้งหมด ในการตรวจสอบว่าสภาพแวดล้อมการใช้งานสนับสนุนพวกเขาสามารถใช้แท็กภาษาที่ผิดกฎหมายได้หรือไม่ หากสภาพแวดล้อมการใช้งานรองรับพารามิเตอร์นี้ข้อยกเว้น Rangeerror จะถูกโยนลงมิฉะนั้นพารามิเตอร์จะถูกละเว้น
ประสิทธิภาพ: เมื่อจัดรูปแบบวันที่จำนวนมากจะเป็นการดีที่สุดที่จะสร้างวัตถุ Intl.DateTimeFormat จากนั้นใช้วิธีการที่จัดทำโดยคุณสมบัติรูปแบบของวัตถุ
date.prototype.toString ()
ส่งคืนสตริงที่แสดงถึงวัตถุวันที่มักจะส่งคืนสตริงในรูปแบบวันที่ภาษาอังกฤษแบบอเมริกัน แทนที่ method.prototype.toString () วิธี
date.prototype.totimestring ()
ส่งคืนสตริงของส่วนเวลาของวัตถุวันที่ในรูปแบบที่มนุษย์อ่านได้
date.prototype.toutcstring ()
แปลงวัตถุวันที่เป็นสตริงที่กำหนดเวลาในเขตเวลา UTC
date.prototype.valueof ()
ส่งคืนจำนวนมิลลิวินาทีตั้งแต่เวลา 0:00:00 น. ของวันที่ 1 มกราคม 1970 (UTC, เช่นเวลาสากลที่ประสานงาน) จนถึงเวลาที่แสดงโดยวัตถุในวันนั้น ฟังก์ชั่นของวิธีนี้เหมือนกับวันที่วันที่ prototype.gettime (), การแทนที่ object.prototype.valueof () วิธีการ
การวิเคราะห์ที่ครอบคลุมด้านบนของ JS: วัตถุวันที่เป็นเนื้อหาทั้งหมดที่ฉันแบ่งปันกับคุณ ฉันหวังว่าคุณจะให้ข้อมูลอ้างอิงและฉันหวังว่าคุณจะสนับสนุน wulin.com มากขึ้น