回答編集履歴
5
テキスト修正
answer
CHANGED
@@ -97,7 +97,7 @@
|
|
97
97
|
|
98
98
|
### 追記
|
99
99
|
|
100
|
-
二つの日付、あるいは日時の差分を取得する
|
100
|
+
momentに用意されている、二つの日付、あるいは日時の差分を取得するメソッド [moment#diff](https://momentjs.com/docs/#/displaying/difference/) を使うと、以下の2行
|
101
101
|
|
102
102
|
```
|
103
103
|
var days = (end - start) / 1000 / 60 / 60 / 24;
|
4
テキスト修正
answer
CHANGED
@@ -52,10 +52,10 @@
|
|
52
52
|
|
53
53
|
上記のコードで使っている moment のメソッドは以下の2点です。
|
54
54
|
|
55
|
-
-
|
55
|
+
- 日付または日時に指定の日数などを加える: [moment#add](https://momentjs.com/docs/#/manipulating/add/)
|
56
|
+
|
57
|
+
- 指定したフォーマットの文字列を取得: [moment#format](https://momentjs.com/docs/#/displaying/format/)
|
56
58
|
|
57
|
-
- moment [format](https://momentjs.com/docs/#/displaying/format/)
|
58
|
-
|
59
59
|
#### (4) 日付のリストを作成する関数
|
60
60
|
|
61
61
|
指定された日付 `date` を開始日として、これを含めて `num` 日の日付をリストアイテムとする、番号付きリスト `<ol>` を返す関数を作ります。ここで、(3) で作った自作プラグインを使います。
|
@@ -97,7 +97,7 @@
|
|
97
97
|
|
98
98
|
### 追記
|
99
99
|
|
100
|
-
二つの日付、あるいは日時の差分を取得する、
|
100
|
+
二つの日付、あるいは日時の差分を取得する、 [moment#diff](https://momentjs.com/docs/#/displaying/difference/) を使うと、以下の2行
|
101
101
|
|
102
102
|
```
|
103
103
|
var days = (end - start) / 1000 / 60 / 60 / 24;
|
3
テキスト修正
answer
CHANGED
@@ -93,4 +93,19 @@
|
|
93
93
|
|
94
94
|
|
95
95
|
|
96
|
-
以上、参考になれば幸いです。
|
96
|
+
以上、参考になれば幸いです。
|
97
|
+
|
98
|
+
### 追記
|
99
|
+
|
100
|
+
二つの日付、あるいは日時の差分を取得する、 moment の [diff](https://momentjs.com/docs/#/displaying/difference/) を使うと、以下の2行
|
101
|
+
|
102
|
+
```
|
103
|
+
var days = (end - start) / 1000 / 60 / 60 / 24;
|
104
|
+
days++;
|
105
|
+
```
|
106
|
+
|
107
|
+
を、以下のように書くことができます。
|
108
|
+
|
109
|
+
```
|
110
|
+
var days = moment(end).diff(moment(start), 'days');
|
111
|
+
```
|
2
テキスト修正
answer
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
こんにちは
|
2
2
|
|
3
|
-
この回答では、ご質問のコードにある、 `<div class="output">` の中に、 開始日から終了日までの日付の文字列を、番号付きリスト `<ol>` で列挙するコードを示します。
|
3
|
+
この回答では、ご質問のコードにある、 `<div class="output">` の中に、 開始日から終了日までの日付の文字列を、番号付きリスト `<ol>` で列挙するコードを示します。また、日付や日時を扱うときに、[Date](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Date)オブジェクトのままでやろうとするよりも、[moment](https://momentjs.com/)を使うと、分かり易いコードを楽に書けることが多いので、これを使います。
|
4
4
|
|
5
5
|
ご質問に挙げられているコードへの追加を、以下にて、順を追って説明します。
|
6
6
|
|
1
テキスト修正
answer
CHANGED
@@ -50,6 +50,12 @@
|
|
50
50
|
は `id` が `test` である要素のテキストに、今日から3日後、つまり、 `2019/07/31 (水)` という文字列を設定します。`date` で指定される日付(または日時)から `n` 日後の日付(または日時)を、`moment(date).add(n, 'days')` と書けるのが、momentの便利なところです。
|
51
51
|
|
52
52
|
|
53
|
+
上記のコードで使っている moment のメソッドは以下の2点です。
|
54
|
+
|
55
|
+
- moment [add](https://momentjs.com/docs/#/manipulating/add/)
|
56
|
+
|
57
|
+
- moment [format](https://momentjs.com/docs/#/displaying/format/)
|
58
|
+
|
53
59
|
#### (4) 日付のリストを作成する関数
|
54
60
|
|
55
61
|
指定された日付 `date` を開始日として、これを含めて `num` 日の日付をリストアイテムとする、番号付きリスト `<ol>` を返す関数を作ります。ここで、(3) で作った自作プラグインを使います。
|