Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

ฟังก์ชัน Date.valueOf() ใน JavaScript

ฟังก์ชัน valueOf() ของออบเจกต์ Date คืนค่า ค่า primitive ของวันที่ คือ จำนวนมิลลิวินาทีตั้งแต่ 1 มกราคม 1970 00:00:00 UTC (Unix timestamp)

ไวยากรณ์

dateObj.valueOf()

ตัวอย่าง

<html> <head>    <title>JavaScript Example</title> </head> <body>    <script type="text/javascript">       var dateObj = new Date('September 26, 89 12:4:25:96');       document.write("เวลาปัจจุบัน: "+dateObj.valueOf());    </script> </body> </html>

ผลลัพธ์

เวลาปัจจุบัน: 622794865096

ตัวอย่าง: ใช้วันที่ปัจจุบัน

<html> <head>    <title>JavaScript Example</title> </head> <body>    <script type="text/javascript">       var dateObj = new Date();       document.write("เวลาปัจจุบัน: "+dateObj.valueOf());    </script> </body> </html>

ผลลัพธ์

เวลาปัจจุบัน: 622794865096

ตัวอย่าง: วันที่ไม่ถูกต้อง

หากวันที่ไม่ถูกต้อง (เช่น วันที่ 38) จะคืนค่า NaN

<html> <head>    <title>JavaScript Example</title> </head> <body>    <script type="text/javascript">       var dateObj = new Date('September 38, 1989');       document.write("เวลาปัจจุบัน: "+dateObj.valueOf());    </script> </body> </html>

ผลลัพธ์

เวลาปัจจุบัน: NaN

จุดสำคัญ:

  • เทียบเท่า dateObj.getTime() และ +dateObj (unary plus)
  • ใช้สำหรับเปรียบเทียบวันที่: date1 > date2 ทำงานได้เพราะ valueOf()
  • คืนค่า Number (primitive) ไม่ใช่ Object
  • Invalid Date → NaN

การใช้งานเปรียบเทียบ:

const d1 = new Date('2024-01-01');
const d2 = new Date('2024-12-31');
console.log(d1 < d2); // true (valueOf ถูกเรียกอัตโนมัติ)
console.log(d1.valueOf() < d2.valueOf()); // true