美文网首页
Safari 时间转换 new Date() 返回 Invali

Safari 时间转换 new Date() 返回 Invali

作者: 何喜同学 | 来源:发表于2019-02-26 20:53 被阅读0次

    今天在找BUG 的时候,遇到一个大坑。我写一个评价页面,上面的时间是后端返回的时间,格式是“2019-02-28 20:20:20”
    我封装了一个函数,只需要传入一个单位是毫秒的时间就可以了。
    于是我这么写

    var time = new Date('2019-02-28 20:20:20').getTime();
    attendClass(time)
    

    原本以为这个很简单,没啥事,结果没想到这个写法有个大坑。在 safari 中, new Date() 不能识别时间 ‘2019-02-28’ 这样的时间格式,它返回的 Invalid Date 。
    解决办法就是将 - 替换为 /
    代码如下

    new Date('2019-02-28 20:20:20'.replace(/-/g,"/")).getTime();
    

    这样就是完美兼容 Safari 了。

    相关文章

      网友评论

          本文标题:Safari 时间转换 new Date() 返回 Invali

          本文链接:https://www.haomeiwen.com/subject/zxwzyqtx.html