js中两个日期大小比较,获取当前日期,日期加减一天

时间:2022-09-15 15:55:53

一、两个日期大小比较
  1、日期参数格式:yyyy-mm-dd

   // a: 日期a, b: 日期b, flag: 返回的结果
  function duibi(a, b,flag) {
var arr = a.split("-");
var starttime = new Date(arr[0], arr[1], arr[2]);
var starttimes = starttime.getTime();
var arrs = b.split("-");
var endTime = new Date(arrs[0], arrs[1], arrs[2]);
var endTimes = endTime.getTime();
// 进行日期比较
if (endTimes >= starttimes) {
flag = "true";
return flag;
}else{
flag = "false";
return flag;
}
  }

  2、日期格式:yyyy-mm-dd hh:mi:ss

   function comptime() {
var beginTime = "2009-09-21 00:00:00";
var endTime = "2009-09-21 00:00:01";
var beginTimes = beginTime.substring(0, 10).split('-');
var endTimes = endTime.substring(0, 10).split('-'); beginTime = beginTimes[1] + '-' + beginTimes[2] + '-' + beginTimes[0] + ' ' +beginTime.substring(10, 19); endTime = endTimes[1] + '-' + endTimes[2] + '-' + endTimes[0] + ' ' + endTime.substring(10, 19); // alert(beginTime + "aaa" + endTime);
// alert(Date.parse(endTime));
// alert(Date.parse(beginTime));
var a = (Date.parse(endTime) - Date.parse(beginTime)) / 3600 / 1000;
if (a < 0) {
alert("endTime小!");
} else if (a > 0) {
alert("endTime大!");
} else if (a == 0) {
alert("时间相等!");
} else {
return 'exception'
}
 }

二、JS中获取日期前一个月的日期
1、参数date格式 : yyyy-mm-dd

   function getPreMonth(date) {
var arr = date.split('-');
var year = arr[0]; //获取当前日期的年份
var month = arr[1]; //获取当前日期的月份
var day = arr[2]; //获取当前日期的日
var days = new Date(year, month, 0);
days = days.getDate(); //获取当前日期中月的天数
var year2 = year;
var month2 = parseInt(month) - 1;
if (month2 == 0) {
year2 = parseInt(year2) - 1;
month2 = 12;
}
var day2 = day;
var days2 = new Date(year2, month2, 0);
days2 = days2.getDate();
if (day2 > days2) {
day2 = days2;
}
if (month2 < 10) {
month2 = '0' + month2;
}
var t2 = year2 + '-' + month2 + '-' + day2;
return t2;
  }

三、js中日期加减一天

   1、 定义以下两个方法
  //String 转为 data: ("yyyy-MM-dd")格式的字符串 转为 Wed Jul 05 2017 13:50:11 GMT+0800 (中国标准时间)
  function convertDateFromString(dateString) {
if (dateString) {
var date = new Date(dateString.replace(/-/,"/"))
return date;
  }
  }
9   //格式化日期 : Wed Jul 05 2017 13:50:11 GMT+0800 (中国标准时间) 准尉 格式为 yyyy-mm-dd 的日期类型
  function formatTime(date) {
  var year = date.getFullYear();
  var month = date.getMonth()+1, month = month < 10 ? '0' + month : month;
  var day = date.getDate(), day =day < 10 ? '0' + day : day;
  return year + '-' + month + '-' + day;
  }   2、用法例子:
  var test = convertDateFromString("2017-10-11");//返回标准的中国时间
  test = formatTime(test); //返回 yyyy-mm-dd 的Date类型
  var now = test.split('-')
  now = new Date(Number(now['0']),(Number(now['1'])-1),Number(now['2']))
  now.setDate(now.getDate() - 1); //setDate()方法实现 加 或 减 一天(可以避免 1号时减一天出错的情况),setDate()方法不会返回任何值,但调用者now会发生改变
  var xx = formatTime(now);