moment 和 dayjs 是前端项目中常用的工具,项目里二者选一就可以了。
moment,dayjs在使用过程中的区别。

moment支持number类型直接转换为时间对象。
dayjs不支持number类型直接转换,必须用string类型

moment
将指定格式字符串/ 数字,解析为moment时间对象,它的包含了JS原生时间对象
(JS原生时间对象 -> Thu Apr 29 2021 10:06:58 GMT+0800 (中国标准时间))。

如 let a = 202009201423 (2020年9月20日 14:23) typeof(a) -> number

moment支持number类型直接转换
let dateObj = moment(a,”YYYYMMDDHHmm”); // moment date Object

转为时间戳
let timestamp = dateObj.valueOf(); // valueOf() 是JS的原生方法。
// let timestampBymoment = moment(a,”YYYYMMDDHHmm”).valueOf() //也可

转为指定格式的字符串,必须用moment( xxx ).format()。
moment(a,”YYYYMMDDHHmm”).format(“YYYY-MM-DD”);
moment(a,”YYYYMMDDHHmm”).valueOf().format(“YYYY-MM-DD”);
moment支持moment时间对象转指定格式。
也支持原生时间对象转指定格式。
还支持时间戳转指定格式。

dayjs
dayjs不支持number类型直接转换,必须用string类型
dayjs(a.toString(),”YYYYMMDDHHmm”)

注意: HH 是24小时制 hh是12小时制

同步发布于自己的语雀
https://www.yuque.com/diracke...


DiracKeeko
125 声望2 粉丝