【Json】时间格式转换
原创
©著作权归作者所有:来自51CTO博客作者gx_143的原创作品,请联系作者获取转载授权,否则将追究法律责任
在做项目中,将实体转化为JSON后,结果后台返回json时间格式为/Date(1306418993027)/
在前台JS里显示的并不是真正的日期,而且我们不能把所有日期字段都变成string吧,
网上有不少的解决方法,但看着都挺麻烦的。因此写了Javascript的扩展方法,来实现这个功能,代码如下
//格式化JSON时间 2017-09-08 20:32:30
function FormatJsonTime(date) {
if (date != null) {
var de = new Date(parseInt(date.replace("/Date(", "").replace(")/", "").split("+")[0]));
var y = de.getFullYear();
var m = de.getMonth() + 1;
var d = de.getDate();
var h = de.getHours();
var mi = de.getMinutes();
var s = de.getSeconds();
return y + '-' + (m < 10 ? ('0' + m) : m) + '-' + (d < 10 ? ('0' + d) : d)+' '+(h<10?('0'+h):h)+':'+(mi<10?('0'+mi):mi)+':'+(s<10?('0'+s):s);
}
else {
return "";
}
}
//格式化JSON时间 2017-09-08
function FormatJsonDate(date) {
if (date != null) {
var de = new Date(parseInt(date.replace("/Date(", "").replace(")/", "").split("+")[0]));
var y = de.getFullYear();
var m = de.getMonth() + 1;
var d = de.getDate();
return y + '-' + (m < 10 ? ('0' + m) : m) + '-' + (d < 10 ? ('0' + d) : d);
}
else {
return "";
}
}
需要将jquery文件引入
简单说下:var de = new Date(parseInt(date.replace("/Date(", "").replace(")/", "").split("+")[0]));
先替换掉“/Date(”,然后再替换掉“)”,然后再转成int类型,再转换成date类型
将格式为/Date(1306418993027)/转换为时间类型