MDN may have intermittent access issues April 18 13:00 - April 19 01:00 UTC. See whistlepig.mozilla.org for all notifications.

mozilla

Compare Revisions

Date.parse()

Change Revisions

Revision 641173:

Revision 641173 by AshKyd on

Revision 643625:

Revision 643625 by fscholz on

Title:
Date.parse()
Date.parse()
Slug:
Web/JavaScript/Reference/Global_Objects/Date/parse
Web/JavaScript/Reference/Global_Objects/Date/parse
Tags:
"Method", "Date", "JavaScript"
"Method", "Date", "JavaScript"
Content:

Revision 641173
Revision 643625
n49      Given a string representing a time, <code>parse</code> retun49      Given a string representing a time, <code>parse</code> retu
>rns the time value. It accepts the RFC2822 / IETF date syntax (<a>rns the time value. It accepts the RFC2822 / IETF date syntax (<a
> class="external" href="http://tools.ietf.org/html/rfc2822#page-1> class="external" href="http://tools.ietf.org/html/rfc2822#page-1
>4" title="http://tools.ietf.org/html/rfc2822#page-14">RFC2822 Sec>4" title="http://tools.ietf.org/html/rfc2822#page-14">RFC2822 Sec
>tion 3.3</a>), e.g. "<code>Mon, 25 Dec 1995 13:30:00 GMT</code>".>tion 3.3</a>), e.g. "<code>Mon, 25 Dec 1995 13:30:00 GMT</code>".
> It understands the continental US time zone abbreviations, but f> It understands the continental US time zone abbreviations, but f
>or general use, use a time zone offset, for example, "<code>Mon, >or general use, use a time zone offset, for example, "<code>Mon, 
>25 Dec 1995 13:30:00 +0430</code>" (4 hours, 30 minutes east of t>25 Dec 1995 13:30:00 +0430</code>" (4 hours, 30 minutes east of t
>he Greenwich meridian). If a time zone is not specified and the s>he Greenwich meridian). If a time zone is not specified and the s
>tring is in an ISO format recognised by ES5, UTC is assumed.&nbsp>tring is in an ISO format recognized by ES5, UTC is assumed. GMT 
>;<span style="line-height: 1.5;">GMT and UTC are considered equiv>and UTC are considered equivalent. The local time zone is used to
>alent. The local time zone is used to interpret arguments in</spa> interpret arguments in <a class="external" href="http://tools.ie
>n> <a class="external" href="http://tools.ietf.org/html/rfc2822#p>tf.org/html/rfc2822#page-14" title="http://tools.ietf.org/html/rf
>age-14" style="line-height: 1.5;" title="http://tools.ietf.org/ht>c2822#page-14">RFC2822 Section 3.3</a> format (or any format not 
>ml/rfc2822#page-14">RFC2822 Section 3.3</a> <span style="line-hei>recognized as ISO 8601 in ES5) that do not contain time zone info
>ght: 1.5;">format (or any format not recognised as ISO 8601 in ES>rmation.
>5) that do not contain time zone information.</span> 
n61      Because <code>parse</code> is a static method of <code>Daten61      Because <code>parse</code> is a static method of <code>Date
></code>, it is called as <code>Date.parse()</code>&nbsp;rather th></code>, it is called as <code>Date.parse()</code> rather than as
>an as a method of a <code>Date</code> instance.> a method of a <code>Date</code> instance.
n67      Given a date string of "<code>March 7, 2014</code>", <code>n67      Given a date string of "<code>March 7, 2014</code>", <code>
>parse</code> assumes a local time zone, but given an ISO format s>parse</code> assumes a local time zone, but given an ISO format s
>uch as &nbsp;"<code>2014-03-07</code>" it will assume a time zone>uch as &nbsp;"<code>2014-03-07</code>" it will assume a time zone
> of &nbsp;UTC. Therefore Date objects produced using those string> of UTC. Therefore Date objects produced using those strings will
>s will represent different moments in time unless the system is s> represent different moments in time unless the system is set wit
>et with a local time zone of UTC.&nbsp;This means that two date s>h a local time zone of UTC. This means that two date strings that
>trings that appear equivalent may result in two different values > appear equivalent may result in two different values depending o
>depending on the format of the string that is being converted (th>n the format of the string that is being converted (this behavior
>is behaviour is changed in ECMAScript ed 6 so that both will be t> is changed in ECMAScript ed 6 so that both will be treated as lo
>reated as local).>cal).
n73      The ECMAScript specification states: If the String does notn73      The ECMAScript specification states: If the String does not
> conform to the standard format&nbsp;the function may fall back t> conform to the standard format the function may fall back to any
>o any implementation–specific heuristics or implementation–specif> implementation–specific heuristics or implementation–specific pa
>ic parsing algorithm. Unrecognizable strings or dates containing >rsing algorithm. Unrecognizable strings or dates containing illeg
>illegal element values in ISO formatted strings shall cause <code>al element values in ISO formatted strings shall cause <code>Date
>>Date.parse</code> to return <code>NaN</code>.>.parse</code> to return <code>NaN</code>.
74    </p>
75    <p>74    </p>
75    <p>
76      However, invalid values in date strings not recognised as I76      However, invalid values in date strings not recognized as I
>SO format as defined by ES5 may or may not result in <code>NaN</c>SO format as defined by ES5 may or may not result in <code>NaN</c
>ode>, depending on the browser and values provided, e.g.&nbsp;>ode>, depending on the browser and values provided, e.g.
n78    <pre class="brush: js" style="font-size: 14px;">n78    <pre class="brush: js">
t83      will be treated as a local date of 25 November, 2015 in Firt83      will be treated as a local date of 25 November, 2015 in Fir
>efox 30 and an invalid date in Safari 7. However, if the string i>efox 30 and an invalid date in Safari 7. However, if the string i
>s recognised as an ISO format string and it contains invalid valu>s recognized as an ISO format string and it contains invalid valu
>es, it will return <code>NaN</code> in all browsers compliant wit>es, it will return <code>NaN</code> in all browsers compliant wit
>h ES5:>h ES5:
84    </p>
84    </p>85    <pre>
85    <pre class="brush: js" style="font-size: 14px;">
86// ISO string with invalid values86// ISO string with invalid values 
87new Date('2014-25-23').toISOString();  87new Date('2014-25-23').toISOString(); 
88// returns "RangeError: invalid date" in all ES5 compliant browse88// returns "RangeError: invalid date" in all es5 compliant browse
>rs>rs

Back to History