js获取当前时间年月日时分秒,前一天,后一天,一周前,一月前等等

boyanx1周前技术教程2

年月日

function yearToDay(time) {
  var y = time.getFullYear(),
  m = time.getMonth() + 1,
  d = time.getDate();
  m = m < 10 ? "0" + m : m;
  d = d < 10 ? "0" + d : d;
  return y + "-" + m + "-" + d;
};
//2022-03-31

年月日时分秒

function yearToSecond(time) {
  var h = time.getHours(),
  i = time.getMinutes(),
  s = time.getSeconds(),
  h = h < 10 ? "0" + h : h;
  i = i < 10 ? "0" + i : i;
  s = s < 10 ? "0" + s : s;
  return yearToDay(time) + ' ' + h + ':' + i + ':' + s;
};
//2022-03-31 10:15:20

年月日,时分秒补0

function yearToZero(){
  return yearToDay(time)+ " 00:00:00"
}
//2022-03-31 00:00:00

当前时间的前一天,后一天

let curDate = new Date()
var preDate = new Date(curDate.getTime() - 24*60*60*1000); //前一天
var nextDate = new Date(curDate.getTime() + 24*60*60*1000);//后一天
console.log(yearToSecond(preDate))//前一天
console.log(yearToSecond(nextDate))//后一天
//2022-03-30 10:15:20
//2022-04-01 10:15:20

当前月份第一天和最后一天

function getCurDay(){
  let nowdays = new Date(),
  year = nowdays.getFullYear(),
  month = nowdays.getMonth() + 1;
  month = month > 9 ? month : "0" + month;
  let firstDayOfCurMonth = `${year}-${month}-01`,
  lastDay = new Date(year, month, 0),
  lastDayOfCurMonth = `${year}-${month}-${lastDay.getDate()}`;
  return [firstDayOfCurMonth,lastDayOfCurMonth]
};
//['2022-03-01','2022-03-31']

当前月份上个月第一天和最后一天

function getPreDay() {
  let nowdays = new Date(),
  year = nowdays.getFullYear(),
  month = nowdays.getMonth();
  if (month == 0) {
    month = 12;
    year = year - 1;
  }
  month = month > 9 ? month : "0" + month;
  let firstDayOfPreMonth = `${year}-${month}-01`,
  lastDay = new Date(year, month, 0),
  lastDayOfPreMonth = `${year}-${month}-${lastDay.getDate()}`
  return [firstDayOfPreMonth,lastDayOfPreMonth]
};
//['2022-02-01', '2022-02-28']

当前时间最近三个月

function  getLast3Month() {
  var now = new Date(),
  year = now.getFullYear(),
  month = now.getMonth() + 1,
  day = now.getDate(),
  dateObj = {};
  month = month > 9 ? month : "0" + month;
  day = day > 9 ? day : "0" + day;
  dateObj.now = year + '-' + month + '-' + day;
  if (parseInt(month) == 1) {//如果是1月份,则取上一年的10月份
    dateObj.last = (parseInt(year) - 1) + '-10-' + day;
    return dateObj;
  }
  if (parseInt(month) == 2) {//如果是2月份,则取上一年的11月份
    dateObj.last = (parseInt(year) - 1) + '-11-' + day;
    return dateObj;
  }
  if (parseInt(month) == 3) {//如果是3月份,则取上一年的12月份
    dateObj.last = (parseInt(year) - 1) + '-12-' + day;
    return dateObj;
  }
  var preSize = new Date(year, parseInt(month) - 3, 0).getDate();//开始时间所在月的总天数
  if (preSize < parseInt(day)) {
    // 开始时间所在月的总天数<本月总天数,比如当前是5月30日,在2月中没有30,则取下个月的第一天(3月1日)为开始时间
    let resultMonth = parseInt(month) - 2 < 10 ? ('0' + parseInt(month) - 2) : (parseInt(month) - 2);  
    dateObj.last = year + '-' + resultMonth + '-01';  
    return dateObj;
  }
  if (parseInt(month) <= 10) {
    dateObj.last = year + '-0' + (parseInt(month) - 3) + '-' + day;
    return dateObj;
  } else {
    dateObj.last = year + '-' + (parseInt(month) - 3) + '-' + day;
    return dateObj;
  }
};
//{last: "2021-12-31",now: "2022-03-31" }

没了,结束了,是不是很简单呐,如有问题,欢迎留言。
如果此篇博文对您有帮助,还请动动小手点点关注 点点赞 收藏 留言呐~,谢谢 ~ ~

标签: date.js

相关文章

一位父亲把婴儿第一年的睡眠模式数据编织成毯子

Seung Lee以针织毯子为他宝宝第一年睡眠情况创造了一种切实,非常柔和的表现形式。Seung Lee通过使用Baby Connect应用程序手动记录睡眠数据,并使用javascript和pytho...

一文解读JavaScript事件对象和表单对象

前言相信做网站对JavaScript再熟悉不过了,它是一门脚本语言,不同于Python的是,它是一门浏览器脚本语言,而Python则是服务器脚本语言,我们不光要会Python,还要会JavaScrip...

分享 JavaScript 2024 的 6 个新功能

JavaScript 在2024 年更新引入了 6个关键功能。从使文本和日期更易于处理,到程序等待和协同工作的新方法,甚至使模式更容易查找。我们一起来看看吧!01、格式正确的 Unicode 字符串格...

拒绝白嫖,开源项目作者删库跑路,数千个应用程序无限输出乱码

机器之心报道编辑:蛋酱、小舟「我删我自己的开源项目代码,需要经过别人允许吗?」几天前,开源库「faker.js」和「colors.js」的用户打开电脑,发现自己的应用程序正在输出乱码数据,那一刻,他们...

Vue独立组件——11个最佳Vue.js日期选择器组件

介绍本文主要介绍几个Vue的时间日期选择器组件,目的在于让开发者们多一些选择,不管是从功能还是从样式,都可以选择一个适合的组件,这些组件没有绝对的好与不好,就看个人如何选择了,以下分别介绍十一个日期选...

明查|俄罗斯3月11日正式和世界互联网断开链接?

明查员 胡甄卿 陈蕾速览-近日,网传消息称,俄罗斯3月11日正式和世界互联网断网。在3月11日前,俄罗斯服务器和网域将被迁至俄罗斯本地。-白俄罗斯媒体NEXTA披露的俄罗斯政府文件并未明确称,俄罗斯将...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。