js修改时间

/*
 * @param dateStr  yyyy-MM-dd HH:mm:ss
 * @return 1小时内,显示xx分钟前,最小值为1分钟前;24小时内,显示xx小时前;24小时~72小时内,显示xx天前;72小时以上,显示日期2015-12-24
 */
function dateFormat(dateStr,format) {
	var d = new Date();
	var now = d.getTime();
	var integers = /(\d{4})-(\d{2})-(\d{2})\s(\d{2}):(\d{2}):(\d{2})/.exec(dateStr);
	if (integers.length!=7) {
		throw "dateFormat() error: illegal param.";
	}
	d.setFullYear(integers[1], integers[2]-1, integers[3]);
	d.setHours(integers[4]);
	d.setMinutes(integers[5]);
	d.setSeconds(integers[6]);
	var time = d.getTime();
	var mill = now - time;
	var a = Math.ceil(mill/1000/60);
	if (a<60) {
		return a+"分钟前";
	}
	if (a>60) {
		var b = Math.ceil(a/60);
		if (b<24) {
			return b+"小时前";
		}
		if (b<72) {
			if (b<48) {
				return "1天前";
			}
			return "2天前";
//			/return Math.ceil(b/24)+"天前";
		}
	}
	if (format==null) {
		format="YMD";
	}
	if (format=="YMD") {
		return integers[1]+"-"+integers[2]+"-"+integers[3];
	}
	if (format=="YMD HM") {
		return integers[1]+"-"+integers[2]+"-"+integers[3]+" "+integers[4]+":"+integers[5];
	}
	return dateStr;
}

作者:恨_别离 本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利,尊重原创,人人有责。

你可能感兴趣的:(前端技术)