日付を文字列に変換する

Elm:
日付を文字列に変換する

How to: (やり方)

import Time
import Task
import Date exposing (Date)

-- 日付を文字列に変換する関数
formatDate : Date -> String
formatDate date =
    let
        -- ISO 8601 形式の例 "2023-01-30"
        isoString = Date.toIsoString date
    in
    isoString

-- サンプル使用例
example : Task x String
example =
    Time.now
        |> Task.map (\currentTime -> formatDate (Date.fromPosix currentTime))

-- ターミナルに出力して確認するための未遂的な関数
tryFormatting : Task x String -> Task x ()
tryFormatting task =
    task |> Task.map (Debug.log "Formatted date")

-- 実行
example
    |> tryFormatting

出力例:

"Formatted date: 2023-01-30"

Deep Dive (探求)

ElmではDate型は時刻を管理する一般的な方法です。DateモジュールはDate型の値を文字列に変換する関数など、日付に関連する機能を提供します。Date型は内部的には POSIX タイムスタンプをミリ秒単位で保持します。ISO 8601形式は国際標準として広く使われており、そのための関数も言語に含まれています。代わりにカスタムフォーマットを使用したい場合は、elm-time-formatなどのサードパーティーのパッケージを探すことになります。

See Also (関連情報)