เปรียบเทียบสองวันที่

Elixir:
เปรียบเทียบสองวันที่

วิธีการ:

Elixir ทำให้การเปรียบเทียบวันที่เป็นเรื่องง่าย นี่คือตัวอย่างในการเปรียบเทียบวันนี้กับวันพรุ่งนี้:

{:ok, today} = Date.new(2023, 4, 1)
{:ok, tomorrow} = Date.new(2023, 4, 2)

# การเปรียบเทียบว่าเหมือนกัน
Date.compare(today, today) # => :eq
# ผลลัพธ์: :eq (เท่ากัน)

# วันไหนเกิดก่อน?
Date.compare(today, tomorrow) # => :lt
# ผลลัพธ์: :lt (น้อยกว่า)

# วันไหนเกิดหลัง?
Date.compare(tomorrow, today) # => :gt
# ผลลัพธ์: :gt (มากกว่า)

การศึกษาเพิ่มเติม

ในอดีต, การเปรียบเทียบวันที่ไม่เสมอเป็นคุณลักษณะที่มีให้ในภาษาโปรแกรมและโปรแกรมเมอร์อาจต้องคำนวณความแตกต่างเองเป็นวินาทีหรือวัน Elixir มีไลบรารีมาตรฐาน อย่างไรก็ตาม รวมถึงโมดูล Date พร้อมกับฟังก์ชัน compare/2 ที่ทำให้งานนี้ง่ายขึ้น

มีทางเลือกสำหรับการจัดการเวลาที่ลึกลงไปใน Elixir เช่นการใช้โมดูล DateTime เพื่อการเปรียบเทียบเวลาที่แม่นยำยิ่งขึ้นไปจนถึงวินาทีหรือไมโครวินาที

เมื่อเปรียบเทียบวันที่, Elixir พิจารณาถึงความซับซ้อนของระบบปฏิทิน มันจัดการกับปีอธิกสุรทิน, ความยาวเดือนที่ต่างกัน, และประเภทปฏิทินที่ต่างกัน, โดยพึ่งพาโมดูล :calendar ของ Erlang เพื่อให้มั่นใจว่ามีความแม่นยำ

ดูเพิ่มเติม