Date.parse()函数用于分析一个包含日期的字符串,并返回该日期与 1970 年 1 月 1 日午夜之间相差的毫秒数。

该函数属于Date对象,所有主流浏览器均支持该函数。

语法

Date.parse()的语法如下:

Date.parse( dateString )

参数

参数 描述
dateString String类型一个表示日期的字符串。

返回值

Date.parse()函数的返回值为Number类型,返回该字符串所表示的日期与 1970 年 1 月 1 日午夜之间相差的毫秒数。

下面这些规则控制着parse()方法所能成功分析的字符串:

  1. 短日期可使用/日期分隔符,但是必须符合月/日/年的格式,例如7/20/966/15/2008
  2. July 10 1995形式表示的长日期中的年、月、日可以按任何顺序排列,而且年份可以用2位数或4位数的形式表示。如果使用2位数的形式来表示年份,则该年份必须大于或等于 70。
  3. 括号中的任何文本都被视为注释。这些括号可以嵌套。
  4. 逗号和空格被视为分隔符。允许使用多个分隔符。
  5. 月和日的名称必须具有两个或两个以上的字符。如果两个字符所组成的名称不唯一,则该名称将解析为最晚的一个匹配日期。例如,Ju解析为七月(July),而不是六月(June)。Chrome不支持"Ju"这种写法。
  6. 如果提供一个日期,该日期中所说明的星期数与根据此日期中其他部分所确定的星期数不相符,则此日期中的星期数将被忽略。例如,尽管 1996 年 11 月 9 日实际上是星期五,但Tuesday November 9 1996还是可以被接受并进行分析。但是结果的 Date 对象中包含的是Friday November 9 1996
  7. JavaScript处理所有的标准时区,以及协调通用时间 (UTC) 和格林威治标准时间 (GMT),例如:Thu, 07 Aug 2014 11:00:14 GMT。IE6 ~ IE8对UTC格式的支持程度非常低,IE9的支持也不全面。
  8. 用冒号分隔小时、分钟和秒,但所有这些内容并非都需要指定。10:10:1110:11:12都是有效的。
  9. 若使用的时钟是 24 小时计时的,那么将中午 12 点之后的时间指定为PM是错误的。例如,23:15 PM就是错误的。
  10. 包含无效日期的字符串是错误的。例如,一个包含两个年份或两个月份的字符串是错误的

在做项目的时候,谷歌浏览器,IE浏览器都能够正常把日期parse掉,但是火狐就是特别点,查了资料才发现都支持这种格式月这“/日/年”,而不是“月-日-年”,火狐会返回NaN。

快捷的替换方式,那就是直接“startDate.replace(/-/g, "/")”,比如:

var dt = '8-15-2013 15:33:40';
dt = dt.replace(/-/g, "/");

  这个是firfox的一个坑。

JS Date.parse() 函数详解的更多相关文章

  1. js的回调函数详解

    本文主要介绍了个人对于javascript中回调函数的理解和使用方法及示例,需要的朋友可以参考下   现在做native App  和Web App是主流,也就是说现在各种基于浏览器的web app框 ...

  2. 使用JS截取字符串函数详解

    一.函数:split() 功能:使用一个指定的分隔符把一个字符串分割存储到数组 例子: str=”jpg|bmp|gif|ico|png”; arr=theString.split(”|”); //a ...

  3. [转]javascript console 函数详解 js开发调试的利器

    javascript console 函数详解 js开发调试的利器   分步阅读 Console 是用于显示 JS和 DOM 对象信息的单独窗口.并且向 JS 中注入1个 console 对象,使用该 ...

  4. Jquery之each函数详解

    最近项目被each函数坑惨了,想来还是好好整理下关于each函数的方方面面,一来方便自己查阅,二来为读者提供经验和教训,废话不多说,来看看Each函数到底是怎么坑人的. 一. 全局jQuery.eac ...

  5. Axure 日期函数详解

    时间函数详解 Now     根据计算机系统设定的日期和时间返回当前的日期和时间值.如:设置元件文本的值为:[[Now]]:输出:Mon Jan 08 2018 10:42:55 GMT+0800 ( ...

  6. Netsuite Formula > Oracle函数列表速查(PL/SQL单行函数和组函数详解).txt

    PL/SQL单行函数和组函数详解 函数是一种有零个或多个参数并且有一个返回值的程序.在SQL中Oracle内建了一系列函数,这些函数都可被称为SQL或PL/SQL语句,函数主要分为两大类: 单行函数 ...

  7. js调试工具Console命令详解

    这篇文章主要介绍了js调试工具Console命令详解,需要的朋友可以参考下   一.显示信息的命令 复制代码 代码如下: < !DOCTYPE html> < html> &l ...

  8. 【转】angularjs指令中的compile与link函数详解

    这篇文章主要介绍了angularjs指令中的compile与link函数详解,本文同时诉大家complie,pre-link,post-link的用法与区别等内容,需要的朋友可以参考下   通常大家在 ...

  9. angularjs指令中的compile与link函数详解

    这篇文章主要介绍了angularjs指令中的compile与link函数详解,本文同时诉大家complie,pre-link,post-link的用法与区别等内容,需要的朋友可以参考下   通常大家在 ...

随机推荐

  1. Jmeter学习笔记ONE

    最近想学一些关于性能测试方面的知识,其实之前已经初步了解了Jmeter工具,它是一个轻量级的性能测试工具,开源并且免费,相比于Loadrunner来说用起来更简便. JMeter 可以用于对服务器.网 ...

  2. 关于List的ConcurrentModificationException

    对ArrayList的操作我们可以通过索引象来访问,也可以通过Iterator来访问,只要不对ArrayList结构上进行修改都不会造成ConcurrentModificationException, ...

  3. C#获取本地IP地址[常用代码段]

    获得当前机器的IP代码,假设本地主机为单网卡 string strHostName = Dns.GetHostName(); //得到本机的主机名 IPHostEntry ipEntry = Dns. ...

  4. C#重写一个控件Label

    1. 首先你把一个label控件拖到窗体上.2. 创建一个准备继承的类,比如叫LabelEx,派生于Label类 public class LabelEx : Label { //鼠标左键双击消息 p ...

  5. Linux创建WiFi热点

    手机流量用完,需要开WiFi,由于是LinuxMint,感觉配置还算容易,找到一个不错的教程,收藏一下,以备后用.除了修改配置文件那步在我的电脑不需要外其他基本正确,而且Mint本来就衍生自Ubunt ...

  6. ReactNative 分享解决listView的一个郁闷BUG

    用ListView的时候,会出现一个非常傻bi的情况,就是render的时候,listView不显示,需要碰/滑一下才会显示. 一开始我在怀疑自己是不是布局哪里有冲突,改到哭都没发现布局有什么问题,直 ...

  7. EventDispatcher 事件分发组件

    引言 考虑这样一个问题,现在你想给为你的项目提供一个插件系统,插件可以添加一些方法,或者在某些方法执行之前或者之后做些事情,而不干扰其他插件.要实现这个系统,简单的单继承不是个好办法,即使多继承在PH ...

  8. [Tip]重写PanGestureRecognizer

    目标 识别当前pan方向是指定方向 需要API 重写- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event; 获取所在view ...

  9. Android Automotive开发之一《环境: JDK7&JDK8切换 》

    http://ubuntuhandbook.org/index.php/2015/01/install-openjdk-8-ubuntu-14-04-12-04-lts/ 安装OpenJDK8 sud ...

  10. css权威指南学习笔记

    2016-08-03 1,继承 一般大多数框模型属性都是不能继承的.如:padding .margin .border .background 都不能继承. 继承值,完全没有特殊性.(就是优先级最低) ...