การคำนวณวันที่ในอนาคตหรืออดีต

JavaScript:
การคำนวณวันที่ในอนาคตหรืออดีต

วิธีการ:

อ็อบเจกต์ Date ใน JavaScript คือตัวเลือกแรกสำหรับการเล่นกับวันที่ มาดูตัวอย่างกันบ้าง:

// วันนี้
let today = new Date();
console.log(today); // แสดงผลวันที่และเวลาปัจจุบัน

// คำนวณวันที่ 7 วันในอนาคต
let nextWeek = new Date();
nextWeek.setDate(today.getDate() + 7);
console.log(nextWeek); // แสดงผลวันที่ในเวลาเดียวกัน, อีก 7 วันข้างหน้า

// คำนวณวันที่ 30 วันในอดีต
let lastMonth = new Date();
lastMonth.setDate(today.getDate() - 30);
console.log(lastMonth); // แสดงผลวันที่ในเวลาเดียวกัน, 30 วันที่ผ่านมา

// ตั้งวันที่ 1 ปีในอนาคต
let nextYear = new Date();
nextYear.setFullYear(today.getFullYear() + 1);
console.log(nextYear); // แสดงผลวันที่ในเวลาเดียวกันปีหน้า

ผลลัพธ์ขึ้นอยู่กับเมื่อคุณรันโค้ดนี้ เนื่องจาก today เป็นวันที่-เวลาของคุณในปัจจุบัน

ลึกซึ้งยิ่งขึ้น

ก่อนที่ JavaScript จะมีฟังก์ชันการจัดการวันที่ในตัว, โปรแกรมเมอร์ต้องคำนวณวันที่ด้วยตัวเอง โดยคำนึงถึงความแตกต่างในความยาวของเดือน, ปีอธิกสุรทิน, และเขตเวลา - ซึ่งเป็นปัญหาใหญ่! ด้วย Date, ปัญหาส่วนใหญ่เหล่านี้จะหายไป

ทางเลือกอื่นนอกเหนือจากอ็อบเจกต์ Date ปกติ รวมถึงไลบรารีเช่น moment.js และ date-fns, ที่นำเสนอไวยากรณ์ที่หลากหลายขึ้นและแก้ไขจุดบกพร่องเช่นบั๊กเรื่องเวลาออมแสง.

เมื่อคำนวณวันที่, จำไว้ว่า: Date นับเดือนตั้งแต่ 0 (มกราคม) ถึง 11 (ธันวาคม), ไม่ใช่ 1-12 และอย่าลืมเรื่องปีอธิกสุรทินเมื่อทำงานกับวันที่ของเดือนกุมภาพันธ์

ดูเพิ่มเติม