dayjs的month和day方法(日期问题)

前端最讨厌的东西莫过于拼凑表单数据了~ 
需要的数据格式千奇百怪
今天碰到这样一个问题 后端需要的数据是这样的

date:{

 year: 2024, month: 8 , day: 28, hour: 9 , minute: 7 : second : 15

 }

其实时间就是2024-08-28 09:07:15这么个时间 不过凑起来可麻烦了

从datePicker拿到数据是一个日期对象 

const date = dayjs(values.start_date?.times.format().valueOf());

!!这里需要加format()的原因时,不加应该就是utc时间 世界时~ 也就是加上时差就是本地时间了

拿到date之后拼给后端 问题就在这里。最后是像下面这样拼的

{

hour: date.hour(),

minute: date.minute(),

second: date.second(),

year: date.year(),

month: date.month() + 1,

day: date.date(),

}

这里犯了两个错误 

一  month()方法拿到的数据是从0开始的 也就是一月的到的就是0 那我8月份得到的就是7 这个问题百度了一下解决了 不仅dayjs是这样,moment也是这样 都是从0开始

二 day()方法怎么看都是个获取日期的方法,可这家伙长得浓眉大眼的 其实他获取的是当前日期是星期几,真是服气啦  百度也很少有 真正的获取日期的方法如上 应该是date()方法 
 

希望大家减少踩坑吧 有什么日期的问题,随时可以留言给我

  • 8
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值