Google Apps Script:
เปรียบเทียบสองวันที่

วิธีการ:

ใน Google Apps Script วันที่ถูกเปรียบเทียบโดยใช้วัตถุ Date ของ JavaScript ซึ่งช่วยให้สามารถใช้เมธอดมาตรฐานในการประเมินว่าวันที่ใดก่อนหลัง หรือถ้าวันที่เหล่านั้นเหมือนกัน นี่คือวิธีการพื้นฐาน:

function compareDates() {
  var date1 = new Date('2023-04-01T00:00:00');
  var date2 = new Date('2023-04-15T00:00:00');

  // เปรียบเทียบวันที่
  if (date1 < date2) {
    Logger.log('Date1 อยู่ก่อน Date2');
  } else if (date1 > date2) {
    Logger.log('Date1 อยู่หลังจาก Date2');
  } else {
    Logger.log('ทั้งสองวันที่เป็นวันเดียวกัน');
  }
}

// ตัวอย่างผลลัพธ์:
// Date1 อยู่ก่อน Date2

สำหรับการเปรียบเทียบที่ละเอียดยิ่งขึ้น (เช่น จำนวนวันระหว่างวันที่สองวัน), คุณสามารถลบวันที่หนึ่งออกจากอีกวันที่หนึ่ง ซึ่งจะได้ค่าแตกต่างเป็นมิลลิวินาที:

function daysBetweenDates() {
  var date1 = new Date('2023-04-01');
  var date2 = new Date('2023-04-15');
  
  var difference = date2 - date1;
  
  var days = difference / (1000 * 60 * 60 * 24); // แปลงมิลลิวินาทีเป็นวัน
  Logger.log(days + ' วันระหว่างวันที่');
}

// ตัวอย่างผลลัพธ์:
// 14 วันระหว่างวันที่

การศึกษาลึก

Google Apps Script ใช้หลักการพื้นฐานของวัตถุ Date ของ JavaScript เพื่อการเปรียบเทียบวันที่ซึ่งเป็นลักษณะพื้นฐานของภาษาตั้งแต่เริ่มแรก การใช้มิลลิวินาทีเป็นค่าเพื่อการเปรียบเทียบนับตั้งแต่ยุค Unix (1 มกราคม 1970) ให้ความแม่นยำสูงในการกำหนดความแตกต่างหรือความคล้ายคลึงกันระหว่างวันที่

แม้ว่าวิธีการนี้จะมีประสิทธิภาพสำหรับกรณีการใช้งานส่วนใหญ่ภายในขอบเขตของ Google Apps Script แต่ก็ควรทราบว่าการดำเนินการบนวันที่ — เช่นการแก้ไขเขตเวลาและการคำนวณปีอธิกสุรทิน — บางครั้งอาจนำไปสู่ความสับสน นักพัฒนาจากภาษาโปรแกรมมิ่งอื่น ๆ (เช่น Python ที่มีโมดูล datetime และ dateutil ให้การจัดการวันที่ที่มีความละเอียดอ่อนมากขึ้น) อาจพบว่าวัตถุ Date ของ JavaScript ขาดคุณสมบัติบางอย่าง

สำหรับการจัดการและการแก้ไขวันที่ที่ซับซ้อนเกินกว่าการเปรียบเทียบง่ายๆ ไลบรารีเช่น Moment.js (ซึ่งยังสามารถใช้งานได้ใน Google Apps Script ผ่าน API ภายนอก) นำเสนอชุดความสามารถที่หลากหลายซึ่งช่วยให้สามารถแก้ไขจุดด้อยเหล่านี้ได้ อย่างไรก็ตาม วัตถุ Date ของ JavaScript ยังคงเป็นเครื่องมือที่เชื่อถือได้สำหรับงานเปรียบเทียบวันที่ส่วนใหญ่ โดยเฉพาะอย่างยิ่งในบริบทของ Google Apps Script และการรวมกับชุดของแอปพลิเคชันของ Google