关于日期曾经闹过很多乌龙,刚入行时两个前端在那讨论什么什么时间不好实现,又是什么往前推N天,闰月怎么办等各种学术性问题,当然后来解决了,现在想想真的是脸红,JS里是有关于时间计算的原生函数的,可以完美实现向前或向后推N年,N月,N天,其实也很好实现,下面已经整理出JS的函数并可直接套用,使用时直接写在处理日期的函数里return一下即可,使用时直接调用,还可以使用传参动态拿时间。
向前推日期,当然用减号是向推前,用加号便是向后推了
获取向前推27天的日期 不用可不减27
// 获取向前推27天的日期 不用可不减27 let myDate = new Date(); //获取今天日期 let nowDate = new Date(myDate.setDate(myDate.getDate() - 27)); let year = nowDate.getFullYear(); let month = nowDate.getMonth() + 1 < 10 ? "0" + (nowDate.getMonth() + 1) : nowDate.getMonth() + 1; let day = nowDate.getDate() < 10 ? "0" + nowDate.getDate() : nowDate.getDate(); let hour = nowDate.getHours() < 10 ? '0' + nowDate.getHours() : nowDate.getHours(); let minute = nowDate.getMinutes() < 10 ? '0' + nowDate.getMinutes() : nowDate.getMinutes(); let second = nowDate.getSeconds() < 10 ? '0' + nowDate.getSeconds() : nowDate.getSeconds(); let dateStr = year + "-" + month + "-" + day + ' ' + hour + ':' + minute + ':' + second; console.log(dateStr)
获取向前推27个月的日期 不用可不减27
// 获取向前推27个月的日期 不用可不减27 let myDate = new Date(); //获取今天日期 let nowDate = new Date(myDate.setMonth(myDate.getMonth() - 27)); let year = nowDate.getFullYear(); let month = nowDate.getMonth() + 1 < 10 ? "0" + (nowDate.getMonth() + 1) : nowDate.getMonth() + 1; let day = nowDate.getDate() < 10 ? "0" + nowDate.getDate() : nowDate.getDate(); let hour = nowDate.getHours() < 10 ? '0' + nowDate.getHours() : nowDate.getHours(); let minute = nowDate.getMinutes() < 10 ? '0' + nowDate.getMinutes() : nowDate.getMinutes(); let second = nowDate.getSeconds() < 10 ? '0' + nowDate.getSeconds() : nowDate.getSeconds(); let dateStr = year + "-" + month + "-" + day + ' ' + hour + ':' + minute + ':' + second; console.log(dateStr)
// 获取向前推27年的日期 不用可不减27
// 获取向前推27年的日期 不用可不减27 let myDate = new Date(); //获取今天日期 let nowDate = new Date(myDate.setFullYear(myDate.getFullYear() - 27)); let year = nowDate.getFullYear(); let month = nowDate.getMonth() + 1 < 10 ? "0" + (nowDate.getMonth() + 1) : nowDate.getMonth() + 1; let day = nowDate.getDate() < 10 ? "0" + nowDate.getDate() : nowDate.getDate(); let hour = nowDate.getHours() < 10 ? '0' + nowDate.getHours() : nowDate.getHours(); let minute = nowDate.getMinutes() < 10 ? '0' + nowDate.getMinutes() : nowDate.getMinutes(); let second = nowDate.getSeconds() < 10 ? '0' + nowDate.getSeconds() : nowDate.getSeconds(); let dateStr = year + "-" + month + "-" + day + ' ' + hour + ':' + minute + ':' + second; console.log(dateStr)
以上便是JS获取N年前/后,N月前/后,N日前/后并返回年月日时分秒日期格式的所有内容
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!