Skip to content

Commit 9a1c511

Browse files
author
Daniel Herzog
committed
Review fixes
1 parent 65b6570 commit 9a1c511

File tree

2 files changed

+10
-9
lines changed

2 files changed

+10
-9
lines changed

src/scripts/dom.js

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -781,14 +781,15 @@ Date.fromLocaleISOString = function(localeISOString)
781781
{
782782
// A localeISOString looks like one of these:
783783
// 2012-08-03T16:11
784-
// 2012-08-03T16:11:52.61 (the it's CORE-47780)
785-
// 2012-08-03T16:11:52.611
784+
// 2012-08-03T16:11:52.2
785+
// 2012-08-03T16:11:52.12 (CORE-47780)
786+
// 2012-08-03T16:11:52.612
786787

787-
var parts = /^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2})(?::(\d{2})\.(\d{2,3}))?$/.exec(localeISOString);
788+
var parts = /^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2})(?::(\d{2})\.(\d+))?$/.exec(localeISOString);
788789
if (parts)
789790
{
790791
parts.shift();
791-
var date = new Date(0);
792+
var date = new Date();
792793
[
793794
// setXyz methods are used to set local timezone, as opposed to setXyzUTC
794795
date.setFullYear,
@@ -800,11 +801,8 @@ Date.fromLocaleISOString = function(localeISOString)
800801
date.setMinutes,
801802
date.setSeconds,
802803
date.setMilliseconds
803-
].forEach(function(func){
804-
var val = parts.shift();
805-
if (val)
806-
func.call(date, Number(val));
807-
804+
].forEach(function(func, i){
805+
func.call(date, Number(parts[i] || 0));
808806
});
809807
return date;
810808
}

tests/locale_iso_strings.html

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,9 @@
3131
var t = Date.fromLocaleISOString("2012-08-03T17:00:00.00").getTime();
3232
equal(t, 1344013200000 + TIMEZONE_OFFSET);
3333

34+
var t = Date.fromLocaleISOString("2012-08-03T17:00:00.0").getTime();
35+
equal(t, 1344013200000 + TIMEZONE_OFFSET);
36+
3437
});
3538

3639

0 commit comments

Comments
 (0)