回答編集履歴
5
テキスト修正
answer
CHANGED
@@ -21,7 +21,7 @@
|
|
21
21
|
というものです。ですので、`timeRequired` や `timeElapsed` は日時を表すものであって、1時間や1分2秒だったりの時間幅を表しているわけではないです。この点がちょっとすっきりしないということであれば、時間幅を表すオブジェクトとして、より適切な
|
22
22
|
|
23
23
|
Durations
|
24
|
-
[https://momentjs.com/docs/#/durations/](https://momentjs.com/docs/#/durations)
|
24
|
+
[https://momentjs.com/docs/#/durations/](https://momentjs.com/docs/#/durations/)
|
25
25
|
|
26
26
|
を使ったほうがよいかもしれません。以下はこれを使ったサンプルです。
|
27
27
|
|
4
テキスト修正
answer
CHANGED
@@ -21,9 +21,9 @@
|
|
21
21
|
というものです。ですので、`timeRequired` や `timeElapsed` は日時を表すものであって、1時間や1分2秒だったりの時間幅を表しているわけではないです。この点がちょっとすっきりしないということであれば、時間幅を表すオブジェクトとして、より適切な
|
22
22
|
|
23
23
|
Durations
|
24
|
-
https://momentjs.com/docs/#/durations/
|
24
|
+
[https://momentjs.com/docs/#/durations/](https://momentjs.com/docs/#/durations)
|
25
25
|
|
26
|
-
を使ったほうがよい
|
26
|
+
を使ったほうがよいかもしれません。以下はこれを使ったサンプルです。
|
27
27
|
|
28
28
|
|
29
29
|
- **動作確認用codepen:** [https://codepen.io/jun68ykt/pen/QWyxwOg?editors=0012](https://codepen.io/jun68ykt/pen/QWyxwOg?editors=0012)
|
3
テキスト修正
answer
CHANGED
@@ -25,6 +25,8 @@
|
|
25
25
|
|
26
26
|
を使ったほうがよいです。以下はこれを使ったサンプルです。
|
27
27
|
|
28
|
-
https://codepen.io/jun68ykt/pen/QWyxwOg?editors=0012
|
29
28
|
|
29
|
+
- **動作確認用codepen:** [https://codepen.io/jun68ykt/pen/QWyxwOg?editors=0012](https://codepen.io/jun68ykt/pen/QWyxwOg?editors=0012)
|
30
|
+
|
31
|
+
|
30
32
|
ただしこの場合は、文字列の`'01:00:00'`や `'00h01m02s'` から、`moment.duration()` に渡すパラメータを作るところを自分で書く必要があります。
|
2
テキスト修正
answer
CHANGED
@@ -8,4 +8,23 @@
|
|
8
8
|
|
9
9
|
console.log(timeRemaining); // => 3538
|
10
10
|
```
|
11
|
-
- **動作確認用codepen:** [https://codepen.io/jun68ykt/pen/ExPLQbV?editors=0012](https://codepen.io/jun68ykt/pen/ExPLQbV?editors=0012)
|
11
|
+
- **動作確認用codepen:** [https://codepen.io/jun68ykt/pen/ExPLQbV?editors=0012](https://codepen.io/jun68ykt/pen/ExPLQbV?editors=0012)
|
12
|
+
|
13
|
+
### 追記
|
14
|
+
|
15
|
+
上記のコードでやっていることは、
|
16
|
+
|
17
|
+
- 今日の日付の1時0分0秒という日時を持ったmomentオブジェクトを作り、`timeRequired` に入れる。
|
18
|
+
- 今日の日付の0時1分2秒という日時を持ったmomentオブジェクトを作り、`timeElapsed` に入れる。
|
19
|
+
- 上記の2つの日時の差分を秒換算で、`timeRemaining` に得る。
|
20
|
+
|
21
|
+
というものです。ですので、`timeRequired` や `timeElapsed` は日時を表すものであって、1時間や1分2秒だったりの時間幅を表しているわけではないです。この点がちょっとすっきりしないということであれば、時間幅を表すオブジェクトとして、より適切な
|
22
|
+
|
23
|
+
Durations
|
24
|
+
https://momentjs.com/docs/#/durations/
|
25
|
+
|
26
|
+
を使ったほうがよいです。以下はこれを使ったサンプルです。
|
27
|
+
|
28
|
+
https://codepen.io/jun68ykt/pen/QWyxwOg?editors=0012
|
29
|
+
|
30
|
+
ただしこの場合は、文字列の`'01:00:00'`や `'00h01m02s'` から、`moment.duration()` に渡すパラメータを作るところを自分で書く必要があります。
|
1
テキスト修正
answer
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
こんにちは
|
2
2
|
以下のようにするのはいかがでしょう?
|
3
3
|
```javascript
|
4
|
-
const
|
4
|
+
const timeRequired = moment('01:00:00', 'HH:mm:ss');
|
5
5
|
const timeElapsed = moment('00h01m02s', 'HHhmmmsss');
|
6
6
|
|
7
|
-
const timeRemaining =
|
7
|
+
const timeRemaining = timeRequired.diff(timeElapsed, 'seconds');
|
8
8
|
|
9
9
|
console.log(timeRemaining); // => 3538
|
10
10
|
```
|