คำนวณวันที่วานนี้จากวันที่ปัจจุบัน
ใช้ setDate(getDate() - 1) ลบ 1 วัน อัปเดตออบเจกต์ Date โดยอัตโนมัติจัดการข้ามเดือน/ปี
ตัวอย่างโค้ด
var currentDate = new Date();
console.log("วันที่ปัจจุบัน = " + currentDate);
var yesterdayDate = currentDate.setDate(currentDate.getDate() - 1);
console.log("วันที่วานนี้ = " + new Date(yesterdayDate));
วิธีรัน
node fileName.js
ผลลัพธ์ตัวอย่าง
วันที่ปัจจุบัน = Fri Jul 31 2020 18:57:17 GMT+0530 (India Standard Time)
วันที่วานนี้ = Thu Jul 30 2020 18:57:17 GMT+0530 (India Standard Time)
คำอธิบาย
getDate()คืนค่าวันของเดือน (1-31)setDate(n)ตั้งค่าวันของเดือน ถ้าน้อยกว่า 1 จะย้อนเดือน/ปีอัตโนมัติsetDate()คืนค่า timestamp (มิลลิวินาที) ไม่ใช่ Date object- ต้อง wrap ด้วย
new Date()อีกครั้งเพื่อได้ Date object
ฟังก์ชันสำเร็จรูป
function getYesterday(date = new Date()) {
const d = new Date(date);
d.setDate(d.getDate() - 1);
return d;
}
console.log(getYesterday()); // วานนี้
console.log(getYesterday(new Date('2024-01-01'))); // 2023-12-31