后端返回的时间格式一般认为是比较固定的,但是随着后端微服务越来越普遍,并且中台战略崛起,各个公司供应商,甚至是公司内部bu之间,各个接口返回的时间格式是不完全统一的。常见的比如,时间戳,已经格式化好的时间字符串,数据库直接存取的date类型等。怎么样才能完全的统一处理好各种格式呢?包括但不限于以下几种(有些格式在iso上不支持,具体的支持格式找不到资料):
1584677760433 2020-03-20T12:16:00.433+0800 2020-03-20T04:16:00.433Z 2020-03-20 04:16:00 2020/03/20 04:16:00 2020.03.20 04:16:00
还有其他格式的,欢迎补充和提供方案,也欢迎了解moment或者其他类库的大神讲解下处理方法
大家统一成绝对时间是比较靠谱的方法。
直接将字符串传给 moment ,他会帮你处理成日期moment对象,然后再转成你需要的格式就行。
http://momentjs.cn/ 有个中文版的文档,里边的方法很多,调用一下就好
let resData = '2020-03-20 04:16:00'; // 后端返回的日期 let mom = moment(resData) let time= mom.format('M月D日 H:mm'); // 返回 3月20日 4:16