JS处理json日期格式化问题
更新时间:2015年10月01日 08:38:39 投稿:mrr
这篇文章主要介绍了JS处理json日期格式化问题的相关资料,需要的朋友可以参考下
起因
对于从C#返回的日期字段,当进行JSON序列化后,在前台JS里显示的并不是真正的日期,这让我们感觉很不爽,我们不可能为了这东西,把所有日期字段都变成string吧,所以,找了一个JS的扩展方法,来实现这个功能
实现
function ChangeDateFormat(jsondate) {
jsondate = jsondate.replace("/Date(", "").replace(")/", "");
if (jsondate.indexOf("+") > 0) {
jsondate = jsondate.substring(0, jsondate.indexOf("+"));
}
else if (jsondate.indexOf("-") > 0) {
jsondate = jsondate.substring(0, jsondate.indexOf("-"));
}
var date = new Date(parseInt(jsondate, 10));
var month = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
var currentDate = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
return date.getFullYear()
+ "年"
+ month
+ "月"
+ currentDate
+ "日"
+ " "
+ date.getHours()
+ ":"
+ date.getMinutes();
}
//调用:ChangeDateFormat(data[i].arrDate)
调用
$.ajax({
type: "Get",
textType: "json",
url: "/UserInfo/GetUserWithdraw",
data: { id: id },
success: function (data) {
var result = html.replace(reg, function (node, key) {
return {
'Money': data.Money,
'AddTime': ChangeDateFormat(data.AddTime),
'CashTime': data.CashTime
}[key];
});
TsingdaTips.ask({ msg: result, show_btn: false, title: "提现申请详情" });//预计打款时间等于申请时音后的(5号或20号)
}
});
PS:返回的json时间如 /Date(1290371638000)/ 形式,怎样处理成 yyyy-MM-dd 这类格式
去掉/Date
直接格式化1290371638000
/**
* 时间对象的格式化;
*/
Date.prototype.format = function(format){
/*
* eg:format="YYYY-MM-dd hh:mm:ss";
*/
var o = {
"M+" : this.getMonth()+1, //month
"d+" : this.getDate(), //day
"h+" : this.getHours(), //hour
"m+" : this.getMinutes(), //minute
"s+" : this.getSeconds(), //second
"q+" : Math.floor((this.getMonth()+3)/3), //quarter
"S" : this.getMilliseconds() //millisecond
}
if(/(y+)/.test(format)) {
format = format.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
}
for(var k in o) {
if(new RegExp("("+ k +")").test(format)) {
format = format.replace(RegExp.$1, RegExp.$1.length==1 ? o[k] : ("00"+ o[k]).substr((""+ o[k]).length));
}
}
return format;
}
使用方法:
var testDate = new Date();
var testStr = testDate.format("YYYY年MM月dd日hh小时mm分ss秒");
alert(testStr);
您可能感兴趣的文章:
相关文章
微信小程序实现上拉加载功能示例【加载更多数据/触底加载/点击加载更多数据】
这篇文章主要介绍了微信小程序实现上拉加载功能,结合实例形式分析了微信小程序加载更多数据、触底加载或点击加载更多数据的相关实现技巧与操作注意事项,需要的朋友可以参考下2020-05-05
element中el-switch的v-model自定义值的实现
在el-switch中设置active-value和inactive-value属性,接受Boolean, String或Number类型的值,本文就来介绍一下element中el-switch的v-model自定义值的实现,感兴趣的可以了解一下2023-11-11
使用JavaScript判断用户输入的是否为正整数(两种方法)
在项目开发中,需要使用JavaScript验证用户输入的是否为正整数,下面小编给大家分享两种方法,需要的朋友参考下2017-02-02
JavaScript使用push方法添加一个元素到数组末尾用法实例
这篇文章主要介绍了JavaScript使用push方法添加一个元素到数组末尾,实例分析了javascript中push函数的使用技巧,需要的朋友可以参考下2015-04-04
javascript 对象属性property与元素属性attribute的浏览器支持
对象属性property与元素属性attribute的浏览器支持情况,大家可以参考下。2010-10-10


最新评论