1日目:基本時間
これは私の19日目です
目次 Table of contents 1. About today's project 2. Time in Elm
3. What is different from the example code? 3.1 View 4. Summary
1 .今日のプロジェクトについて
https://ellie-app.com/bZcnMkJZvrVa1
このプロジェクトで伝えたい情報の主な部分は、距離と時間です.
天文学プロジェクトの構築、我々が取り組んでいる主なものは、光分は、どの程度まで光が数分の特定の数で移動を教えている.
光年は少し奇妙に聞こえるが、我々はすでに距離のための時間を使用しています.私の両親の場所から最寄りの都市は1時間-距離です.
私はこのプロジェクトに表示したいものです
今日はあまりやりたくないので、まずハードワークの証明を得ることに集中します.
エルムの時間
出発点として、このコードをコピーして貼り付けました.https://guide.elm-lang.org/effects/time.html
JavaScriptでは、私は
3 .コード例とは何か?
眺め以外は、何も付け加えていない.私はちょうど時間からX分を減算するので、余分な複雑なものの必要はありません.
私は頻繁に時間を更新することを選択することができます.我々は、時間と分だけを表示しているので、毎秒それを更新するだけでは、1つの60のチックの1つは、ビューの更新プログラムの結果になります.
しかし、私はすべてをそのまま保った.GUIとユーザのコンピュータが同時に分を変更しないならば、私はそれが好きでありません.
3.1見解
私がこれを書いているので、時間は17 : 50です.75分の時間差は
新しい時間を得るために、私たちは最初にどのように多くの分が真夜中から今日通過して見つけることができます.
私たちが17 : 50に付いているならば、分の総数は(17 x 60)+ 50です.その後、その数からライト分を減算します. 17 * 60 + 50 = 1070 75分減算し、995です. 新しい時間は16時35分です 数が10未満であるならば、我々は使用します
編集:私は、00 : 00を含みませんでした- 1 = 23 : 59.以下のようになります.
まとめ
私は、これが単純な運動であることを望みました、そして、私は正しかったです.これは後で非常に役に立つでしょう.
いくつかのファンキーな数字が最初の2番目の表示されますが、私はあまりにもそれを修正するには疲れている.
また明日
目次
3. What is different from the example code?
1 .今日のプロジェクトについて
https://ellie-app.com/bZcnMkJZvrVa1
このプロジェクトで伝えたい情報の主な部分は、距離と時間です.
天文学プロジェクトの構築、我々が取り組んでいる主なものは、光分は、どの程度まで光が数分の特定の数で移動を教えている.
光年は少し奇妙に聞こえるが、我々はすでに距離のための時間を使用しています.私の両親の場所から最寄りの都市は1時間-距離です.
私はこのプロジェクトに表示したいものです
users_current_time - lightMinutes
. あなたが与えられた太陽系のボディからあなたの家を観察していた場合は、どのくらいの時間に戻って表示されますか?今日はあまりやりたくないので、まずハードワークの証明を得ることに集中します.
エルムの時間
出発点として、このコードをコピーして貼り付けました.https://guide.elm-lang.org/effects/time.html
JavaScriptでは、私は
Date
いくつかの奇妙な風変わりな物const d = new Date()
// Checking if it's the 24th day of the 12th month
const isXmas = d.getDate() === 24 && d.getMonth() === 11 // lol wtf
const year = d.getYear()
// Returns 121! You need to use d.getFullYear() to get 2021 :D
一方、ELMはPOSIX TIMEを使います:With POSIX time, it does not matter where you live or what time of year it is. It is just the number of seconds elapsed since some arbitrary moment (in 1970). Everywhere you go on Earth, POSIX time is the same.
3 .コード例とは何か?
眺め以外は、何も付け加えていない.私はちょうど時間からX分を減算するので、余分な複雑なものの必要はありません.
私は頻繁に時間を更新することを選択することができます.我々は、時間と分だけを表示しているので、毎秒それを更新するだけでは、1つの60のチックの1つは、ビューの更新プログラムの結果になります.
しかし、私はすべてをそのまま保った.GUIとユーザのコンピュータが同時に分を変更しないならば、私はそれが好きでありません.
3.1見解
view : Model -> Html Msg
view model =
let
lightMinutes =
75
currentHour =
Time.toHour model.zone model.time
currentMinute =
Time.toMinute model.zone model.time
newMinutes =
(currentHour * 60) + currentMinute - lightMinutes
h =
floor (toFloat newMinutes / 60)
|> String.fromInt
|> String.padLeft 2 '0'
m =
remainderBy 60 newMinutes
|> String.fromInt
|> String.padLeft 2 '0'
in
h1 [] [ text <| h ++ ":" ++ m ]
currentHour
and currentMinute
JavaScriptとは異なりますが、私は、それが彼らが何をするかについて、かなり明確であると思います.私がこれを書いているので、時間は17 : 50です.75分の時間差は
16
何時間も35
分間.新しい時間を得るために、私たちは最初にどのように多くの分が真夜中から今日通過して見つけることができます.
私たちが17 : 50に付いているならば、分の総数は(17 x 60)+ 50です.その後、その数からライト分を減算します.
floor 995 / 60
= 16remainderBy 60 995
= 35String.padLeft
0を加える.単一の引用符で0文字をラップしてください.編集:私は、00 : 00を含みませんでした- 1 = 23 : 59.以下のようになります.
getNewHour currentHour hoursToSubtract =
let
timeDifference =
currentHour - hoursToSubtract
newHour =
if timeDifference < 0 then
24 - abs timeDifference
else
timeDifference
in
newHour
まとめ
私は、これが単純な運動であることを望みました、そして、私は正しかったです.これは後で非常に役に立つでしょう.
いくつかのファンキーな数字が最初の2番目の表示されますが、私はあまりにもそれを修正するには疲れている.
また明日
Reference
この問題について(1日目:基本時間), 我々は、より多くの情報をここで見つけました https://dev.to/kristianpedersen/30daysofelm-day-19-basic-time-acテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol