Tulevaisuuden tai menneisyyden päivämäärän laskeminen

Elixir:
Tulevaisuuden tai menneisyyden päivämäärän laskeminen

How to:

Elixirissä päivämäärien kanssa työskentely onnistuu Date-moduulin avulla. Katsotaan esimerkkiä:

# Nykyinen päivämäärä
current_date = Date.utc_today()

# Viiden päivän kuluttua
five_days_later = Date.add(current_date, 5)
IO.inspect(five_days_later)

# Kolme päivää sitten
three_days_ago = Date.add(current_date, -3)
IO.inspect(three_days_ago)

Sample output:

~D[2023-03-14]
~D[2023-03-06]

Deep Dive

Päivämäärien laskenta Elixirissä liittyy suoraan Erlangin aikakirjastoon. Historiallisesti, päivämäärien käsittely monissa kielissä on ollut monimutkaista. Elixirin Date-moduuli yksinkertaistaa tätä käyttäen hyväksi Erlangin vakaita toimintoja.

Vaihtoehtoisia kirjastoja, kuten Timex, tarjoavat vielä laajempia ominaisuuksia, mutta perustoiminnot löytyvät suoraan Elixirstä. Moduulissa käytetään :calendar Erlang-moduulin toimintoja ja se tukee ISO 8601 -standardia, joka on kansainvälisesti tunnustettu päivämäärien esittämisen standardi.

Date.add/2-funktio ottaa päivämäärän ja lisää siihen (tai vähentää, jos luku on negatiivinen) halutun määrän päiviä. Date.utc_today/0 palauttaa nykyisen UTC-päivämäärän.

See Also