zoukankan      html  css  js  c++  java
  • safari不支持new Date函数

    最近在做移动Web的时候,在PC上用Chrome调试都成功了,但是在iPhone上真机一测就出现了奇怪的问题。经过一系列调试发现是日期相关的地方出现了问题。起初怀疑是生产环境的问题,但用Mac版的safari调试本地也出现了同样的问题。查阅一些资料后发现,safari中对于JavaScript的new Date函数的支持有一个比较奇怪的问题,不只是safari浏览器,ios上的浏览器都会弹出invalid date,进行new date()转化的时候变成NaN,据说IE也有此问题,查找资料后修改如下。

    通常,由于习惯了SQL中的datetime格式,日期是打成yyyy-mm-dd的格式,然而,safari竟然不支持这样的格式,所以当你输入如下语句时,会返回空的时间,invalid date。

    var date = new Date("2016-11-11 11:11:11")

    Safari支持的格式是yyyy/mm/dd这样的,差别主要在于短横-与斜杠/,而斜杠这样的格式在其他常见的浏览器中也都是可以正常运行的,所以只需要都换成斜杠就可以了,

    转换函数: var date = new Date ("2016-04-17 11:11:11".replace(/-/g,'/'));

    这样再进行 var timestamp = date.getTime();即可顺利求出时间戳

  • 相关阅读:
    codeblocks opengl的配置
    linuxn内核调试方法
    当段限长是0的时候
    linux0.12 memory.c
    嵌入式汇编+系统调用
    exit和return
    一些基础知识
    Quartus中仿真时出现no simulation input file assignment specify 解决方法 (转载)
    linux 定时器 setitimer
    ret retf iret
  • 原文地址:https://www.cnblogs.com/xuniannian/p/8569067.html
Copyright © 2011-2022 走看看