不同手机对于字符串转换成日期处理不一样

发布于 7 年前作者 vcai3343 次浏览最后编辑 7 年前来自 ask

pc 及小米手机

苹果7p和魅族Pro5

3 回复
leifu
leifu1 楼6 年前

如果字符串是“2018-09-03”的话,建议先把“-”替换成“/”再交给js处理。

pingfu
pingfu2 楼6 年前

嗯,被坑过

chao86
chao863 楼5 年前

 

         /*

     longTime : Unix时间戳ms

     fmt : “YYYY-MM-DD hh:mm:ss”

     */

    

            formatDate: function (longTime, fmt) {

     let date = new Date(longTime);

     if(/(y+)/.test(fmt)){

     fmt = fmt.replace(RegExp.$1,(date.getFullYear()+‘’).substr(4-RegExp.$1.length));

     }

     let o = {

     ‘M+’:date.getMonth() + 1,

     ‘d+’:date.getDate(),

     ‘h+’:date.getHours(),

     ‘m+’:date.getMinutes(),

     ‘s+’:date.getSeconds()

     };

    

     // 遍历这个对象

     for(let k in o){

     if(new RegExp(`(${k})`).test(fmt)){

     let str = o[k] + ‘’;

     fmt = fmt.replace(RegExp.$1,(RegExp.$1.length===1)?str :(‘00’+str).substr(str.length) );

     }

     }

     return fmt;

     },