簡體   English   中英

如何將帶有Date的String轉換為Json對象?

[英]How to convert String with Date to Json Object?

我想在我的Javascript中將一個字符串轉換為JSON對象。 當我轉換為Json對象時,String中的日期完全改變了

這是我的字符串

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對象中沒有正確轉換..它是如此??可以有人請指導嗎?

不要使用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));
<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)。 所以我認為日期應該用雙引號括起來。 我希望這有幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM