Перетворення дати в рядок

Elm:
Перетворення дати в рядок

Як це зробити:

У Elm, для роботи з датами та часом, корисною є бібліотека elm/time. Ось приклад конвертації дати в рядок:

import Time exposing (Posix)
import Time.Zone exposing (Zone)
import Date

-- Припустимо у нас є об'єкт POSIX, який представляє певний момент в часі
posixDate : Posix
posixDate = Time.millisToPosix 1514764800000

-- Функція для отримання рядка з дати
formatDate : Zone -> Posix -> String
formatDate zone posix =
    posix
        |> Time.toIsoString
        |> String.left 10

-- Використання функції
zone : Zone
zone = Time.utc

resultString : String
resultString = formatDate zone posixDate
-- "2018-01-01"

Поглиблений Розгляд:

Історичний контекст: у багатьох програмувальних мовах були свої примітиви і методи для роботи з датами, а в Elm цю роль відіграє модуль Time.

Альтернативи: можна використовувати інші бібліотеки, як от justinmimbs/date для додаткових оперіцій з датами. Також існує можливість застосовувати кастомні формати з індивідуальними шаблонами.

Деталі реалізації: Elm використовує тип Posix, щоб представити момент в часі в мілісекундах з дати Unix Epoch. Time.Zone визначає часовий пояс, для конвертування міток часу в локальний час. Функція toIsoString повертає ISO 8601 представлення дати та часу в UTC.

Дивіться Також: