moment(一个js时间格式化处理库)使用及踩坑

前言:

moment.js是一个时间处理库,在前端经常用到比如ui框架里datePicker,rangePicker等组件会用到。

其实 现在基本主流库 都换成 day.js了,因为 它体积更小。支持模块化 ,可拓展性高。

Day.js中文网

一、moment.js

moment.js官方api

二、使用时出现的错误及踩坑

1.Invalid date(无效的日期)

 说明你传入的值不是个有效的日期(找了好久才找到)。

moment('1616486656000'); //这样是可以的
moment('1616486656000').format('YYYY-MM-DD');//这样就不行报Invalid date


moment(Number('1616486656000')).format('YYYY-MM-DD');//这样就行 毫秒数类型必须为数组不能时字符串   会把毫秒数转换为2020-03-23格式的时间

三、项目中用到的函数

      工作日:

      是指周一到周五(不包含周六日)

     自然日:

     周一到周日

1.获取默认时间(工作日)

2.只能选前后七天的日期(配合rangePicker)

3.计算当前日期后n个工作日(传入当前日期和,几日后的天数)

4.是否为周末(传入一个日期)

5.moment.js 格式化时间带毫秒数(传入一个时间戳也行)

 注意:这个是对版本有要求 

从 2.10.5 版本开始:长度为 4 到 9 位的带分数的秒钟令牌可以解析任意数量的数字,但只会考虑前 3 个数(毫秒)。 如果需要打印带有多位分数且想要消耗输入的时间,则使用它。

注意,仅在严格模式中解析时,提供的 S 字符的数量才有意义。 在标准模式中,SSSSSSSSSS 均等效,并解释为几分之一秒。 例如,.12 始终为 120 毫秒,传入 SS 不会导致其被解释为 12 毫秒。

所以使用这个moment.js版本需要大于等于2.10.5(总之尽量使用最新版本)

moment.js格式化

 //格式 :"YYYY-MM-DD HH:mm:ss.SSS"

 moment(new Date().getTime()).format("YYYY-MM-DD HH:mm:ss.SSS")

6. js 计算两个日期间所有的日期(moment.js实现)

js 计算两个日期间所有的日期(moment.js实现)_崽崽的谷雨的博客-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

崽崽的谷雨

漫漫前端路,摸爬滚打

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值