
简单记录下今天使用moment.js遇到的问题;
场景:从数据库里获取的返回值delivery_date,要与当前日期做比较,得出相差多少天;
问题:直接写 let nowDeliveryDate = moment() //获取当前日期
let deliveryDate = moment(list.delivery_date); //用moment来显示获取的日期
list.shenyu_date = deliveryDate.diff(nowDeliveryDate,‘day’) ; //作对比.显示天数
本来这么写也没多大问题,就是会遇到这么一种情况,当list.delivery_date不是YYYY-MM-DD的格式时,它就会显示少一天,
比如今天是2019-06-13,然后list.delivery_date是2019-06-10 20:50:12,此时shenyu_date显示的是相差2天,而我想要的效
果是相差3天,因为这里时分秒也被计算进去了,所以不足一天,就不会计算进去;
所以第一次利用格式化去对比
是这样写的:
let nowDeliveryDate = moment().format(‘YYYY-MM-DD’) //获取当前日期
let deliveryDate = moment(list.delivery_date).format(‘YYYY-MM-DD’) ; //用moment来显示获取的日期
list.shenyu_date = deliveryDate.diff(nowDeliveryDate,‘day’) ; //作对比.显示天数
这个时候执行,控制台会报错diff这个不能这么用,排查了一番只得出解决办法(还没得出怎么官方的解释哈,希望后面有人指 出)
就是不能这么使用:
let deliveryDate = moment(list.delivery_date).format(‘YYYY-MM-DD’) ;
只有改成:
let deliveryDate = moment(list.delivery_date,‘YYYY-MM-DD’)
才能正常的用diff去作对比;
这张是不在括号里加(,‘YYYY-MM-DD’)就会导致相差一天的截图
最上面那张图是最终结果,可以正常作对比的;
微信小程序使用moment.js进行日期相减得出相差天数的随笔记录
浏览量:6587
时间:
来源:waitlzm
版权声明
即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。
最新资讯
-

小程序制作平台选型踩坑记录:2026年五大主流方案横向对比
2026 年微信小程序月活达 10.7 亿、覆盖 108 个行业,本次横向对比即速应用、乔拓云、凡科、有赞、微盟五大主流平台,分三阶段给出选型结论,核心聚焦成本、扩展性、运营能力三大维度。 -

即速应用,赋能企业玩转微信小程序智慧经营
作为国内领军的智慧商业经营服务商,即速应用始终秉承“让每个企业都拥有自己的智慧店铺”的愿景,持续赋能更多企业玩转智慧经营。即速应用旗下拥有“小程序搭建工具-即速应用”、“私域流量专家-即客云”等产品,帮助商家打通互联网全生态营销闭环。 -

即客云2.0重磅更新,让微信小程序运营更简单!
即客云作为一款基于企业微信的第三方工具,现从多维度提供超过30种功能,自上线以来,已服务多家企业,受到一致好评。近期,我们根据客户反馈和市场调研正式推出升级版 即客云2.0!更新了私域运营SOP,群日历功能,批量拓客,客户雷达,消息推送,个人欢迎语,帮助企业更好运用企业微信;同时提升了社群运营工作标准化,提升运营效率,帮助企业实现客户增长,玩转私域流量。










