1. IE浏览器new Date();的坑
var thisDate=new Date("yyyy-MM-dd HH:mm:ss");//此方式IE不支持
var thisDate=new Date("yyyy/MM/dd HH:mm:ss");//此语法支持IE
复制代码
2. 比较两个日期的大小。例:2019-3-19
//比较两个日期大小
function dateCompare(startDate,endDate){
var aStart=startDate.split('-'); //转成成数组,分别为年,月,日,下同
var aEnd=endDate.split('-');
var startDateTemp = aStart[0]+"/" + aStart[1]+ "/" + aStart[2];
var endDateTemp = aEnd[0] + "/" + aEnd[1] + "/" + aEnd[2];
if (startDateTemp > endDateTemp)
return true;
else
return false;
}
复制代码
3. 计算两个日期之间的天数
function dateDiff(date1, date2){
var type1 = typeof date1, type2 = typeof date2;
if(type1 == 'string')
date1 = stringToTime(date1);
else if(date1.getTime)
date1 = date1.getTime();
if(type2 == 'string')
date2 = stringToTime(date2);
else if(date2.getTime)
date2 = date2.getTime();
return (date2 - date1) / 1000 / 60 / 60 / 24;//除1000是毫秒,不加是秒
}
//字符串转成Time(dateDiff)所需方法
function stringToTime(string){
var f = string.split(' ', 2);
var d = (f[0] ? f[0] : '').split('-', 3);
var t = (f[1] ? f[1] : '').split(':', 3);
return (new Date(
parseInt(d[0], 10) || null,
(parseInt(d[1], 10) || 1)-1,
parseInt(d[2], 10) || null,
parseInt(t[0], 10) || null,
parseInt(t[1], 10) || null,
parseInt(t[2], 10) || null)).getTime();
}
复制代码
4. 显示当前系统日期(跑起来的时间)
function showtime() {
// 获取当前时间对象
var day = new Date();
var yeas = day.getFullYear();// 获取年份
var month = day.getMonth();// 获取月份,值在0--11之间
var days = day.getDate();// 获取每个月的第几天
var hours = day.getHours();// 获取当前的小时
var minutes = day.getMinutes();// 获取当前的分钟
var seconds = day.getSeconds();// 获取当前的时间秒
var week = day.getDay();// 获取当前的星期值在0--6之间
// alert(week);
var weeks = null;
if (week == 1) {
weeks = "星期一";
} else if (week == 2) {
weeks = "星期二";
} else if (week == 3) {
weeks = "星期三";
} else if (week == 4) {
weeks = "星期四";
} else if (week == 5) {
weeks = "星期五";
} else if (week == 6) {
weeks = "星期六";
} else if (week == 0) {// 0代表的是星期天
weeks = "星期天";
}
// 将日期显示在前台
$("#clock").text(yeas + "年" + (month + 1) + "月" + days + "日" + hours + ":" + minutes+ ":" + seconds + "\t\t\t" + weeks);
}
复制代码
$(function() {
showtime();
// 调用时间函数,每一秒钟调用一次
setInterval("showtime()", 1000);
});
复制代码
5:格式化当前系统时间
Date.prototype.format = function(format){
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.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;
}
//返回当前年月日格式为:2016-04-08而不是2016-4-8
new Date().format.("yyyy-MM-dd");
复制代码
6. 计算两个日期相差分钟数
// 两个日期之间的分钟数
function calcDateMinute(startDate,endDate){
var newDate = new Date(endDate).getTime() - new Date(startDate).getTime();
return Math.ceil(newDate / 1000 / 60);
}
复制代码