0

この JSON で解析エラーが発生するのはなぜですか? これまでに何百回も問題なく実行したと断言できます。

[[0,0,0,new Date(1364068990245)],[0,0,0,new Date(1364068940075)]]
4

3 に答える 3

4

これがリテラル JavaScript の場合は、次のようになります。

var myArray = [[0,0,0.......]];

あなたのエラーはどこか別の場所から来ているに違いありません。

次のように、JSON として扱う文字列の場合:

var myArray = JSON.parse("[[0,0,0.........]]");

次に、(または実際には関数呼び出しを)持つことはできずnew Date、それは日付に解析する単なる数値でなければなりません。

于 2013-03-23T21:04:00.590 に答える
1

これは JSON ではありません。JSON 形式の日付はありません。

参照: http://www.json.org/

一部の JSON パーサーは、日付を表す次の方法で標準を拡張しています。

"[[0,0,0,/Date(1364068990245)/],[0,0,0,/Date(1364068940075)/]]"

使用するパーサーがそれをサポートしていない場合は、数値などの別のデータ型として送信し、JSON を解析した後に日付に変換する必要があります。

"[[0,0,0,1364068990245],[0,0,0,1364068940075]]"
于 2013-03-23T21:40:03.280 に答える
1

new演算子は JSON の一部ではないためです。あなたの例は JavaScript ファイルの有効なフラグメントですが、JSON として解析すると正しくエラーになります。日付は文字列としてシリアル化する必要があります (理想的には、コンストラクターによって受け入れられる ISO-8601 文字列としてですがDate、数値も許容できると思います)。

于 2013-03-23T21:05:43.917 に答える