Javascript 将JSON日期解析为另一种格式
如果我从数据库接收到带有JSON的所有记录,我如何将格式Javascript 将JSON日期解析为另一种格式,javascript,php,jquery,json,Javascript,Php,Jquery,Json,如果我从数据库接收到带有JSON的所有记录,我如何将格式2014-09-04 23:20:00(存储在数据库中)更改为04/09/2014。此时,日期被解析为1970年1月1日星期四00:00:02 GMT+0000(GMT标准时间) $(“文档”).ready(函数(){ $.getJSON(“test1.php”,函数(数据){ 变量表=$(“”); $(“#div my table”).empty().append(table); $。每个(数据、功能(i、项){ table.appen
2014-09-04 23:20:00
(存储在数据库中)更改为04/09/2014
。此时,日期被解析为1970年1月1日星期四00:00:02 GMT+0000(GMT标准时间)
$(“文档”).ready(函数(){
$.getJSON(“test1.php”,函数(数据){
变量表=$(“”);
$(“#div my table”).empty().append(table);
$。每个(数据、功能(i、项){
table.append(“+item.code+”+item.line+“+item.org+”+新日期(parseInt(item.by_Date.substr)(“u”))+”);
});
});
});
您可以使用多个可用库中的任意一个来解析字符串,然后使用多个可用库中的任意一个将其转换为所需格式。在现代浏览器上,您引用的字符串应该由new Date()
正确解析,但是如果您发现它没有被正确解析(您的示例毫无意义),您可能需要类似MomentJS的东西
当然,您也可以将其正则化:
var yourString=“2014-09-04 23:20:00”;
var parts=/^(\d{4})-(d{2})-(d{2})/.exec(yourString);
var newString=零件[3]+“/”+零件[2]+“/”+零件[1];
log(“newString=“+newString”)代码>
如果您得到的值为1970年1月1日星期四00:00:02 GMT+0000(GMT标准时间)表示,请执行以下操作
var d=new Date('Thu Jan 01 1970 00:00:02 GMT+0000 (GMT Standard Time)');
var day=d.getDate();
var month=d.getMonth()+1;
var year = d.getFullYear();
then format the string like d.getDate()+"/"+(d.getMonth()+1)+"/"+d.getYear()
所以你会得到一天,一个月,一年。您可以根据需要设置格式。您可以从日期中提取日期、月份和年份,然后使用它形成字符串。您可以尝试以下方法:
var dateObj = new Date(jsonDate);
var month = dateObj.getUTCMonth() + 1; //months from 1-12
var day = dateObj.getUTCDate();
var year = dateObj.getUTCFullYear();
newdate = day + "/" + month + "/" + year;
alert(newdate);
其中jsonDate是从JSON中提取的日期元素
// Split timestamp into [ Y, M, D, h, m, s ]
var t = "2010-06-09 13:12:01".split(/[- :]/);
// Apply each element to the Date function
var d = new Date(t[0], t[1]-1, t[2], t[3], t[4], t[5]);
alert(d);
// -> Wed Jun 09 2010 13:12:01 GMT+0100 (GMT Daylight Time)
// Split timestamp into [ Y, M, D, h, m, s ]
var t = "2010-06-09 13:12:01".split(/[- :]/);
// Apply each element to the Date function
var d = new Date(t[0], t[1]-1, t[2], t[3], t[4], t[5]);
alert(d);
// -> Wed Jun 09 2010 13:12:01 GMT+0100 (GMT Daylight Time)