我有一个javascript对象如下。
var obj = { pageSize:"25",asOfDate:"Thu Sep 25 00:00:00 UTC+0530 2014"};
当我将其字符串化时,
var d = JSON.stringify(obj);
它给我结果
{"pageSize":"25","asOfDate":"2014-09-24T18:30:00Z"}
提供日期2014-09-24
的原因可能是2014-09-25
?
编辑:
我的部署服务器位于美国(东部时间UTC -5:00)。当我从我在印度的本地计算机上检查该网站时,它给我的日期为24 Sept 2014
答案 0 :(得分:3)
UTC+0530
声明UTC时间偏移量。似乎5:30
位于India or Sri Lanka area附近。
"2014-09-24T18:30:00Z"
与两种不同格式的"Thu Sep 25 00:00:00 UTC+0530 2014"
相同。第一种格式的Z
解析为UTC(GMT)时间,在本例中为-5:30
。因此18:30
为24:00 - 5:30
。
所以,如果你是stringify
- 在负偏移的时区(比如在United States UTC−08:00
中)那么它可以在解析时将日期推回一天。
我认为这就是你所看到的。
答案 1 :(得分:1)
试试这个
public JsonResult GetLOVDivCount()
{
return Json(SearchRep.GetDivCount(), JsonRequestBehavior.AllowGet);
}
答案 2 :(得分:0)
在JSON中传递日期没有标准格式,因此JSON.stringify
只是调用默认的date.prototype.toString()
方法,并且考虑了时区。
您需要确保将日期转换为符合您特定要求的字符串,并仅转换为JSON格式。