Elm:
Comparer deux dates

How to:

Comparons deux dates en Elm. Utilisons le module Date fourni par elm/time.

import Time exposing (Posix)
import Date

-- Créons deux dates
date1 : Posix
date1 = 
    Date.fromIsoString "2023-03-01T00:00:00Z"
        |> Result.withDefault (Date.fromMillis 0)

date2 : Posix
date2 = 
    Date.fromIsoString "2023-03-10T00:00:00Z"
        |> Result.withDefault (Date.fromMillis 0)

-- Comparons-les
compareDates : Posix -> Posix -> Comparison
compareDates d1 d2 =
    Date.compare d1 d2

-- Résultat de la comparaison
compareResult : Comparison
compareResult = compareDates date1 date2

-- Affichons le résultat
case compareResult of
    LT -> "La première date est plus tôt que la deuxième."
    EQ -> "Les deux dates sont identiques."
    GT -> "La première date est plus tard que la deuxième."

Si vous tournez ce code, vous verrez:

"La première date est plus tôt que la deuxième."

Deep Dive

Comparer des dates en Elm est direct grâce au module Date. Historiquement, la gestion du temps en programmation est dure, en raison des fuseaux horaires et des formats de dates divers. Elm simplifie cela. Il y a d’autres options comme les librairies elm-time ou l’utilisation de fonctions personnalisées, mais elm/time est standard et robuste. Le module utilise Posix, qui représente le temps universel coordonné (UTC). En Elm, la comparaison se fait par rapport à ce temps UTC, ce qui évite les complications des fuseaux horaires.

See Also

Pour plus d’infos sur la gestion du temps en Elm :