最近遇到一个问题,有一些特殊处理的时间字符串如果直接使用new Date会导致输出Invalid Date的问题,例如
new Date("2021年12月20日") // Invalid Date
因为这里的时间字符串并不是标准的时间格式,是一个特殊处理过的。
我们知道这种特殊的时间字符串是通过一些自定义函数或Moment.js加时间模板来生成的。那我们可不可以用时间模板反义回Date数据呢?自定义处理这类似的问题估计会很复杂,查找Moment.js的方法,发现Moment.js可以使用自定义时间模板来格式化时间字符串
先安装Moment
npm install moment --save
利用Moment.js格式化时间字符串生成Date数据
const myDate = moment("2021年12月20日", "YYYY年MM月DD日").format() // 2021-12-20
const newDate = new Date(myDate)
附上Moment.js 的官网链接https://momentjs.com/
这里Moment.js可换成Dayjs体积更小功能一样 https://github.com/iamkun/dayjs
网友评论