时间日期处理

一、'2024年7月29日星期一 17:23'
 moment(new Date()).locale('zh-cn').format('llll')
// '2024年7月29日星期一 17:23'
二、 2024-07-30
      const now = new Date()
      const year = now.getFullYear()
      const month = (now.getMonth() + 1).toString().padStart(2, '0')
      const day = now.getDate().toString().padStart(2, '0')
      //   return `${year}-${month}-${day}`;
      console.log(`${year}-${month}-${day}`)
      // 2024-07-30

getFullYear()             获取当年

getMonth()+1            获取当月

getDate()                  获取当日

toString()                  转换为字符串

padStart(2, '0')         字符串长度不够两位,在前面加个0

padStart()方法,padEnd()方法
padStart()方法,padEnd()方法-CSDN博客
'5'.padStart(2, '0') // '05'
'5'.padEnd(2, '0') // '50'

上面代码中,padStart()padStart()一共接受两个参数,第一个参数用来指定字符串的最小长度,第二个参数是用来补全的字符串。如果原字符串的长度,等于或大于指定的最小长度,则返回原字符串。

三、 获取本周第一天

设计周是否跨月,需留意

const now = new Date()
const dayOfWeek = now.getDay() // 今天是当周第几天
const diff = now.getDate() // 今天是当月第几天
let data = '' // 需要的时间
const lastDays = new Date(now.getFullYear(), now.getMonth(),0).getDate() // 上个月一共多少天
if (diff>=dayOfWeek){ // 周不跨月直接用当前日期减去周几再加上周一当天
    data = `${now.getFullYear()}-${(now.getMonth()+1).toString().padStart(2,'0')}-${(now.getDate()-dayOfWeek + 1).toString().padStart(2,'0')}`
} else { // 周跨月获取上月时间减去因公垮了几天
    data = `${now.getFullYear()}-${(now.getMonth()).toString().padStart(2,'0')}-${(lastDays -dayOfWeek + diff + 1).toString()}`
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值