1

Javascript で 1 つの文字列を JSON オブジェクトに変換したいと考えています。Json オブジェクトに変換すると、文字列の日付が完全に変更されました

これは私のひもです

var JsonData=[[2013-02-27,787],[2013-02-26,131],[2013-02-02,0],[2013-01-20,8],[2012-12-28,12]]

次のようにJSONオブジェクトに変換しています

var json = eval( JsonData );

次に、アラートで次の結果を取得します

1984,787,1985,131,2009,0,1992,8,1972,12

誰でも私を案内してもらえますか?これを解決するにはどうすればよいですか?

今、次のエラーが発生しました

Timestamp: 3/7/2013 1:10:36 PM
Error: TypeError: this.proxy.getTime is not a function

私のjavascriptのどこかで..だから私はその日付がJsonオブジェクトで適切に変換されていないためだと考えています..そうですか??誰かガイドしてもらえますか?

4

2 に答える 2

3

eval() を使用しないでください

JSON.parse()を使用して、文字列を json オブジェクトに変換します。さらに、JsonData は有効な JSON ではないため、JSON.stringify()も使用してください。

var JsonData = [[2013-02-27,787],[2013-02-26,131],[2013-02-02,0],[2013-01-20,8],[2012-12-28,12]];
JSONObject = JSON.parse(JSON.stringify(JsonData));
于 2013-03-07T07:30:13.037 に答える
1
<script>
var JsonData=[[2013-02-27,787],[2013-02-26,131],[2013-02-02,0],[2013-01-20,8],["2012-12-28,12"],["Fri May 04 2012 01:17:07 GMT-0700 (PDT)"]]
var json = eval( JsonData );
alert(json);
</script>

それから私が得た結果は 1984,787,1985,131,2009,0,1992,8,2012-12-28,12,Fri May 04 2012 01:17:07 GMT-0700 (PDT) です。したがって、日付は二重引用符で囲む必要があると思います。これが役立つことを願っています。

于 2013-03-07T07:27:27.030 に答える