חישוב תאריך בעתיד או בעבר

Clojure:
חישוב תאריך בעתיד או בעבר

איך לעשות:

;; נשתמש בספריית clj-time
(require '[clj-time.core :as t]
         '[clj-time.format :as fmt]
         '[clj-time.periodic :as p])

;; יצירת תאריך
(def my-date (t/now))

;; להוסיף 3 ימים לתאריך
(def future-date (t/plus my-date (t/days 3)))

;; להפחית 5 שנים מתאריך
(def past-date (t/minus my-date (t/years 5)))

;; דוגמה לפלט
(println (fmt/unparse (fmt/formatters :basic-date-time) future-date))
;; => "20230217T103000.000Z"

(println (fmt/unparse (fmt/formatters :basic-date-time) past-date))
;; => "20180217T103000.000Z"

עיון נוסף

הספריה clj-time מבוססת על Joda-Time, ספרייה פופולרית של ג’אווה לניהול זמנים ותאריכים. חלופות כוללות את ספריית java.time של Java 8 והלאה. בחירת הספריה תלויה בדרישות הפרויקט ובהעדפות האישיות. כשעובדים עם תאריכים, חשוב להבין את המושגים של אזורי זמן והתאמות עונתיות כדי להימנע מבאגים.

ראו גם