当前位置 : 主页 > 手机教程 > 手机资讯 >

JS实现获取时间已经时间与时间戳转换

来源:互联网 收集:自由互联 发布时间:2023-01-20
目录 获取当前月的第一天 获前取n天日期 根据两个日期,判断相差天数 根据bai两个日期,判断相差月数 获取几个月前的输入日期 时间戳转换时间 时间戳转换时间 - 无时分秒 时间戳转
目录
  • 获取当前月的第一天
  • 获前取n天日期
  • 根据两个日期,判断相差天数
  • 根据bai两个日期,判断相差月数
  • 获取几个月前的输入日期
  • 时间戳转换时间
  • 时间戳转换时间 - 无时分秒
  • 时间戳转换时间-无日期
  • 获取当前日期

时间戳转换时间或获取日期工具类

获取当前月的第一天

function getCurrentMonthFirst=()=>{
  var date=new Date();
  date.setDate(1);
  return common.getdateNoTime(date);
}

获前取n天日期

function getBeforeDate=()=>{
  var n = n;
  var d = new Date();
  var year = d.getFullYear();
  var mon = d.getMonth() + 1;
  var day = d.getDate();
  if (day <= n) {
    if (mon > 1) {
      mon = mon - 1;
    } else {
      year = year - 1;
      mon = 12;
    }
  }
  d.setDate(d.getDate() - n);
  year = d.getFullYear();
  mon = d.getMonth() + 1;
  day = d.getDate();
  const s = year + '-' + (mon < 10 ? '0' + mon : mon) + '-' + (day < 10 ? '0' + day : day);
  return s;
}

根据两个日期,判断相差天数

/**
 * @zhiparam sDate1 开始日期 如:2016-11-01
 * @param sDate2 结束日期 如:2016-11-02
 * @returns {nDays} 返回相差天数
 */
function daysBetween = (sDate1, sDate2) => {
  var time1 = Date.parse(new Date(sDate1));
  var time2 = Date.parse(new Date(sDate2));
  var nDays = Math.abs(parseInt((time2 - time1) / 1000 / 3600 / 24));
  return nDays;
}

根据bai两个日期,判断相差月数

/**
 * @zhiparam startDate 开始日期 如:2016-11-01
 * @param endStart结束日期 如:2016-11-02
 * @returns {intervalMonth} 返回相差月数
 */
function getIntervalMonth = (startDate, endStart) => {
  var startMonth = new Date(startDate).getMonth();
  var endMonth = new Date(endStart).getMonth();
  var intervalMonth =
    new Date(endStart).getFullYear() * 12 + endMonth - (new Date(startDate).getFullYear() * 12 + startMonth);
  return intervalMonth;
}

获取几个月前的输入日期

/**
 *{param:DateTime} date 输入日期(YYYY-MM-DD)
 *{param:number } monthNum 月数
 */
function getIntervalMonth = (startDate, endStart) => {
  var dateArr = date.split('-');
  var year = dateArr[0]; //获取当前日期的年份
  var month = dateArr[1]; //获取当前日期的月份
  var day = dateArr[2]; //获取当前日期的日
  var days = new Date(year, month, 0);
  days = days.getDate(); //获取当前日期中月的天数
  var year2 = year;
  var month2 = parseInt(month) - monthNum;
  if (month2 <= 0) {
    var absM = Math.abs(month2);
    year2 = parseInt(year2) - Math.ceil(absM / 12 == 0 ? 1 : parseInt(absM) / 12);
    month2 = 12 - (absM % 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;
}

时间戳转换时间

function getdate= (date) => {
  var now = new Date(date),
    y = now.getFullYear(),
    m = now.getMonth() + 1,
    d = now.getDate();
  return y + '-' + (m < 10 ? '0' + m : m) + '-' + (d < 10 ? '0' + d : d) + ' ' + now.toTimeString().substr(0, 8);
}

时间戳转换时间 - 无时分秒

function getdateNoTime= (date) => {
  var now = new Date(date),
    y = now.getFullYear(),
    m = now.getMonth() + 1,
    d = now.getDate();
  return y + '-' + (m < 10 ? '0' + m : m) + '-' + (d < 10 ? '0' + d : d);
}

时间戳转换时间-无日期

function getdateTime= (date) => {
  var now = new Date(date),
    y = now.getFullYear(),
    m = now.getMonth() + 1,
    d = now.getDate();
  return now.toTimeString().substr(0, 8);
}

获取当前日期

function formatting= (time) => {
  let date = new Date();
  if (time !== undefined) {
    date = new Date(time);
  }
  const seperator1 = '-';
  const year = date.getFullYear();
  let month = date.getMonth() + 1;
  let strDate = date.getDate();
  if (month >= 1 && month <= 9) {
    month = `0${month}`;
  }
  if (strDate >= 0 && strDate <= 9) {
    strDate = `0${strDate}`;
  }
  const currentdate = year + seperator1 + month + seperator1 + strDate;
  return currentdate;
}

到此这篇关于JS实现获取时间已经时间与时间戳转换的文章就介绍到这了,更多相关JS 时间 时间戳内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!

上一篇:postMessage的两种使用方式
下一篇:没有了
网友评论