比较两个时间的大小,例如比较10:00和14:28的大小,函数如下
CompareTime = function (t1, t2) { var date = new Date(); var a = t1.split(":"); var b = t2.split(":"); return date.setHours(a[0], a[1]) > date.setHours(b[0], b[1]); }
计算两个时间的差值(秒,分钟,小时,天),函数如下
GetDateDiff = function (startTime, endTime, diffType) { //将xxxx-xx-xx的时间格式,转换为 xxxx/xx/xx的格式 startTime = startTime.replace(/-/g, "/"); endTime = endTime.replace(/-/g, "/"); //将计算间隔类型字符转换为小写 diffType = diffType.toLowerCase(); var sTime = new Date(startTime); //开始时间 var eTime = new Date(endTime); //结束时间 //作为除数的数字 var timeType = 1; switch (diffType) { case "second": timeType = 1000; break; case "minute": timeType = 1000 * 60; break; case "hour": timeType = 1000 * 3600; break; case "day": timeType = 1000 * 3600 * 24; break; default: break; } return parseInt((eTime.getTime() - sTime.getTime()) / parseInt(timeType)); }
获取当前时间左右的第N天,函数如下
GetDateStr = function (AddDayCount) { var dd = new Date(); dd.setDate(dd.getDate() + AddDayCount);//获取AddDayCount天后的日期 var y = dd.getFullYear(); var m = dd.getMonth() + 1;//获取当前月份的日期 var d = dd.getDate(); return y + "-" + m + "-" + d; }
将日期转换为指定的格式:比如转换成 年月日时分秒 这种格式:yyyy-MM-dd hh:mm:ss 或者 yyyy-MM-dd,函数如下
//为Date原型添加如下的方法: Date.prototype.format = function (fmt) { var o = { "M+": this.getMonth() + 1, //月份 "d+": this.getDate(), //日 "h+": this.getHours(), //小时 "m+": this.getMinutes(), //分 "s+": this.getSeconds(), //秒 "q+": Math.floor((this.getMonth() + 3) / 3), //季度 "S": this.getMilliseconds() //毫秒 }; if (/(y+)/.test(fmt)) { fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)); } for (var k in o) { if (new RegExp("(" + k + ")").test(fmt)) { fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length))); } } return fmt; }
使用:new Date().format("yyyy-MM-dd");