質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

1回答

1638閲覧

Day.jsを使用して、開始時刻、終了時刻を取得して、差分を計算したい。

Microbe

総合スコア12

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2022/05/15 01:20

Day.js(https://day.js.org/)
を使用して、時刻の差分を計算したいが、JavaScriptの初心者のため躓いています。

HTML

HTML

1<div class="time-wrap"> 2 <ul class="control-list"> 3 <li> 4 <input class="item" type="button" id="start" value="START" onclick="start()"> 5 </li> 6 <li> 7 <input class="item" type="button" id="stop" value="STOP" onclick="stoped()"> 8 </li> 9 <li> 10 <input class="item" type="button" id="done" value="DONE" onclick="done()"> 11 </li> 12 </ul> 13</div>

JavaScript

1function start() { 2 var x = dayjs().format('YYYY/M/D hh:mm:ss') 3 console.log(x, 'に開始しました。'); 4} 5 6function stoped() { 7 var y = dayjs().format('YYYY/M/D hh:mm:ss') 8 console.log(y, 'に完了しました。'); 9} 10 11function done() { 12 var duration = dayjs.duration(x.diff(y)) 13 console.log(duration); 14}

変数はスコープ内でしか扱えないので、差分が計算できないのですが、スコープ外でする方法がわからずです。
答えではなく、方法だけでも教えていただけると助かります。
初歩的な内容ですみません、、

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

こんな感じかもです。

js

1let startDatetime; 2let endDatetime; 3 4function start() { 5 startDatetime = dayjs(); 6 const text = start.format('YYYY/M/D hh:mm:ss') 7 console.log(text, 'に開始しました。'); 8} 9 10function stoped() { 11 endDatetime = dayjs(); 12 const text = endDatetime.format('YYYY/M/D hh:mm:ss') 13 console.log(text, 'に完了しました。'); 14} 15 16function done() { 17 const duration = dayjs.duration(startDatetime.diff(endDatetime)) 18 console.log(duration); 19} 20

投稿2022/05/15 01:59

standard-soft

総合スコア197

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Microbe

2022/05/15 09:47

こちらで解決できました! 初歩的な内容なのにも関わらず丁寧にありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問