回答編集履歴
6
文法の修正
test
CHANGED
@@ -32,11 +32,11 @@
|
|
32
32
|
|
33
33
|
|
34
34
|
|
35
|
-
しかし、この方法には致命的な欠点があります。それは、日時っぽい文字列と日時を表す文字列を区別できないと言うこと、つまりは、それが日
|
35
|
+
しかし、この方法には致命的な欠点があります。それは、日時っぽい文字列と日時を表す文字列を区別できないと言うこと、つまりは、それが日時として解釈して良いのか判断付かないと言うことです。
|
36
36
|
|
37
37
|
|
38
38
|
|
39
|
-
実際に.toJSON()やJSON.stringify()した場合、`"2017-08-22T14:58:32.352Z"`という文字列になります。JSON上では、これが元々Dateを表していたのか、それとも初めからこういう文字列だったのかを判断することはできません。JSONにはそういった
|
39
|
+
実際に.toJSON()やJSON.stringify()した場合、`"2017-08-22T14:58:32.352Z"`という文字列になります。JSON上では、これが元々Dateを表していたのか、それとも初めからこういう文字列だったのかを判断することはできません。JSONにはそういった日時のデータの場合の表し方が規定されておらず、単なる文字列としてしか表現しようがないからです。
|
40
40
|
|
41
41
|
|
42
42
|
|
5
等追加
test
CHANGED
@@ -142,7 +142,7 @@
|
|
142
142
|
|
143
143
|
|
144
144
|
|
145
|
-
なお、Date.parseのブラウザ間の実装の違いが気になる場合は、[Momemnt.js](https://momentjs.com/)を使うことをお勧めします。.NET独自のJSONのDate形式まで対応していますので、どんな形式で作られていようが大抵は対応できます。でも、.NET形式への変換はできないようです。せっかくSurferOnWwwさんが.NETの場合について色々説明してくれているのに、JavaScriptでは実現できる方法が見つけられなくて、ごめんなさい。
|
145
|
+
なお、Date.parse等のブラウザ間の実装の違いが気になる場合は、[Momemnt.js](https://momentjs.com/)を使うことをお勧めします。.NET独自のJSONのDate形式まで対応していますので、どんな形式で作られていようが大抵は対応できます。でも、.NET形式への変換はできないようです。せっかくSurferOnWwwさんが.NETの場合について色々説明してくれているのに、JavaScriptでは実現できる方法が見つけられなくて、ごめんなさい。
|
146
146
|
|
147
147
|
|
148
148
|
|
4
とくに???
test
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
|
8
8
|
|
9
|
-
ES5準拠のほとんどのブラウザであれば、Date.prototype.toJSONやJSON.stringifyによって文字列化してシリアライズし、デシリアライズではその文字列をDate.parseやnew Dateで読み取ることはできるでしょう。(
|
9
|
+
ES5準拠のほとんどのブラウザであれば、Date.prototype.toJSONやJSON.stringifyによって文字列化してシリアライズし、デシリアライズではその文字列をDate.parseやnew Dateで読み取ることはできるでしょう。(古いブラウザではできません。また、なにやら実装ずれがあるようで、最新のブラウザでも全てのブラウザでできるとは限らないようです。)
|
10
10
|
|
11
11
|
|
12
12
|
|
3
コードが違っていた
test
CHANGED
@@ -66,7 +66,7 @@
|
|
66
66
|
|
67
67
|
|
68
68
|
|
69
|
-
最初に渡しているものが
|
69
|
+
最初に渡しているものが文字列なのに、同じようにDateになってしまいます。
|
70
70
|
|
71
71
|
|
72
72
|
|
@@ -110,7 +110,7 @@
|
|
110
110
|
|
111
111
|
import YAML from 'js-yaml';
|
112
112
|
|
113
|
-
const date =
|
113
|
+
const date = '2017-08-22T14:58:32.352Z';
|
114
114
|
|
115
115
|
console.log(date);
|
116
116
|
|
2
サンプルで使っているのが違うぞ
test
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
|
8
8
|
|
9
|
-
ES5準拠のほとんどのブラウザであれば、Date.prototype.toJSONによって文字列化してシリアライズし、デシリアライズではその文字列をDate.parseで読み取ることはできるでしょう。(特に古いブラウザではできません。また、なにやら実装ずれがあるようで、最新のブラウザでも全てのブラウザでできるとは限らないようです。)
|
9
|
+
ES5準拠のほとんどのブラウザであれば、Date.prototype.toJSONやJSON.stringifyによって文字列化してシリアライズし、デシリアライズではその文字列をDate.parseやnew Dateで読み取ることはできるでしょう。(特に古いブラウザではできません。また、なにやら実装ずれがあるようで、最新のブラウザでも全てのブラウザでできるとは限らないようです。)
|
10
10
|
|
11
11
|
|
12
12
|
|
1
全てなのかどうかまでは確認していません。
test
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
|
8
8
|
|
9
|
-
ES5準拠であれば、Date.prototype.toJSONによって文字列化してシリアライズし、デシリアライズではその文字列をDate.parseで読み取ることはできるでしょう。(
|
9
|
+
ES5準拠のほとんどのブラウザであれば、Date.prototype.toJSONによって文字列化してシリアライズし、デシリアライズではその文字列をDate.parseで読み取ることはできるでしょう。(特に古いブラウザではできません。また、なにやら実装ずれがあるようで、最新のブラウザでも全てのブラウザでできるとは限らないようです。)
|
10
10
|
|
11
11
|
|
12
12
|
|