136 Views
October 04, 20
スライド概要
Notes/Dominoの@関数を取り上げながら、調べたこと、経験したことを雑談してゆきます。
第21回は @Date と @Time について。
@ -notes knows community- 2020/06/04 @関数Talk 第21回 公開版 @ 阿部 覚 (tw:) @abesat
@ 熟成を待っていたら3カ月近くたってしまいましたが 前回、 @Adjustや日時の定数を扱った流れで 今回も日時関係でTalkさせていただきます @
@ @Date を雑談その1 @
@Dateのメジャーだと思う使い方 @ いつものように 上段:式 下段:結果の値 というフォームを 説明に用いています 「日付だけにする関数」ですね @
@Dateのメジャーだと思う使い方 @ 「日付だけにする関数」 よくある例としては、作成日・更新日を表示するとき @ @Dateで、時間の情報を略します
@Dateのメジャーだと思う使い方 @ 「日付だけにする関数」 ちなみに、日付だけにするわけだから 日付がない時間だけの値に使うと、消えます @
@ じゃあ、マイナーな使い方って? で ま く あ の べ あ が す で 主観 @
@Dateのマイナーだと思う使い方 @ こんな使い方です 年 月 日 セミコロンで区切った引数内に設定した数値の組み合わせで 日付値が生成されます(数は全角でもOKでした) メジャーだと思う使い方は 「日付だけにする関数」なのに対して これは 「日付にする関数」と言っていいかな @
@Dateのマイナーだと思う使い方 @ 「日付にする関数」 もちろん、カレンダー的にあり得ない値を指定したら 変換されません 年 月 👻 年 👻 日 ただ、エラーが出るわけではないみたい @
@ マイナーな使い方、もうひとつありまして でも後回しにします いったん別の関数に話を移します @
@ @Time を雑談その1 @
@Timeのメジャーだと思う使い方 @ 「時刻だけにする関数」ですね @
@Timeのメジャーだと思う使い方 @ 「時刻だけにする関数」 ちなみに、時刻だけにするわけだから 日付だけで時刻がない値に使うと、消えます @
@ じゃあ、マイナーな使い方って? で ま く あ の べ あ が す で 主観 @
@Timeのマイナーだと思う使い方 @ こんな使い方です 時 分 秒 セミコロンで区切った引数内に設定した数値の組み合わせで 時刻値が生成されます メジャーだと思う使い方は 「時刻だけにする関数」なのに対して これは 「時刻にする関数」と言っていいかな @
@Timeのマイナーだと思う使い方 @ 「時刻にする関数」 もちろん、あり得ない時刻を指定したら 変換されません 時 👻秒 👻 分 秒 ただ、エラーが出るわけではないみたい @
@Timeのマイナーだと思う使い方 @ 「時刻にする関数」 あれ? 時 分 😇 時 分 😇 @ なんと、「秒」だけは、60秒、61秒のときに限り、 秒のときに限り 繰り上がりします!理由があるのかなぁ…
@ ここで改めて 先ほど保留したおはなし @
@ @Date を雑談その2 @
@Dateのマイナーだと思うもうひとつの使い方 @ こんな使い方です 引数が6つに増えます 年 月 日 時 分 秒 @ セミコロンで区切った引数内に設定した数値の組み合わせで 日時値が生成されます(数は全角でもOKでした) 関数名は@Dateなのに、内容としてはDate Time なのです 「日時にする関数」と言っておきましょう
@Dateのマイナーだと思うもうひとつの使い方 @ 「日時にする関数」 やはり、あり得ない日時を指定したら 変換されないのですが、やはり秒だけは特別らしく 年 月 日 時 分 秒 @ 60, 61を指定したら繰り上がり、 ご覧のように内容次第で日付のほうまで繰り上がります
@ @Time を雑談その2 @
@Timeのマイナーだと思うもうひとつの使い方 @ こんな使い方です 引数が6つに増えます 年 月 日 時 分 秒 @ セミコロンで区切った引数内に設定した数値の組み合わせで 日時値が生成されます(数は全角でもOKでした) 関数名は@Timeなのに、内容としてはDate Time なのです 「日時にする関数」と言っておきましょう
@Timeのマイナーだと思うもうひとつの使い方 @ 「日時にする関数」 やはり、あり得ない日時を指定したら 変換されないのですが、やはり秒だけは特別らしく 年 月 日 時 分 秒 @ 60, 61を指定したら繰り上がり、 ご覧のように内容次第で日付のほうまで繰り上がります
@ もうお気づきですね? …ということで 合体しちゃいます @Date @Time @ を雑談その2
@Date・@Timeのマイナーだと思うもうひとつの使い方 @ 「日時にする関数」 つまりこの使い方に関する限り、 @Dateと@Timeはどちらでも全く同じ動きをする、と言えそうです @
@ マイナーだと思う使い方のメリットは? 本Talkでは、自分の経験と主観だけで「マイナー」と呼んじゃいました 引数で数値を指定するやり方、 私はあまり(ほぼ)実アプリで見た記憶がありません @
@ マイナーだと思う使い方のメリットは? あまり使われてなさそうな理由として思い浮かぶのは 日時定数を使えば済む、というのがありそうに思います @ 変数を使わずに直接日付を指定する用途(ハードコード)なら @Dateとか使わずとも、日時定数のほうがわかりやすいです
@ マイナーだと思う使い方のメリットは? でも日時定数のままだと… こちらはOSの地域設定を英語(米国)の日時設定に変えたときの表示 日本では 日本ではOK OKの式が の式が 他の環境では 他の環境では エラーになることがある エラーになることがある @ つまり日時定数は、地域が変われば「年 月 日」の順序も その地域に合わせて設定され、同じ式が効かなくなる場合があります
@ マイナーだと思う使い方のメリットは? いっぽう、関数を用いれば、時刻設定の環境が変わっても エラーを出さずに値を返してくれます 関数内の引数の日時順序は 関数内の引数の日時順序は 常に 常に 年 年;; 月 月;; 日 日;; 時 時;; 分 分;; 秒 秒 いわば万国共通 いわば万国共通🌎💛 🌎💛 @ 前回 前回Talk Talkした した @Adjust @Adjustも同様 も同様 国際利用を意識したら、関数のほうがおすすめと言えそうです
@ 他にご存知のメリットがあったら 教えてください 久々のお付き合い ありがとうございました 😀 @