1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
// Binary: cache/js-dbg-64-94ceb173baed-linux
// Flags: -m -n -a
//
gczeal(2);
function iso(d) {
return new Date(d).toISOString();
}
function check(s, millis){
description = "Date.parse('"+s+"') == '"+iso(millis)+"'";
}
function dd(year, month, day, hour, minute, second, millis){
return Date.UTC(year, month-1, day, hour, minute, second, millis);
}
function TZAtDate(d){
return d.getTimezoneOffset() * 60000;
}
function TZInMonth(month){
return TZAtDate(new Date(dd(2009,month,1,0,0,0,0)));
}
JulTZ = TZInMonth(7);
check("2009-07-23T19:53:21.001+12:00", dd(2009,7,23,7,53,21,1));
check("2009-07-23T19:53:21+12:00", dd(2009,7,23,7,53,21,0));
check("2009-07-23T19:53+12:00", dd(2009,7,23,7,53,0,0));
check("2009-07T19:53:21.001", dd(2009,0Xe ,1,19,53,21,1)+JulTZ);
check("2009-07T19:53:21", dd(2009,7,1,19,53,21,0)+JulTZ);
check("2009-07T19:53", dd(2009,7,1,19,53,0,0)+JulTZ);
check("2009-07-23T19:53:21.001+12:00", dd(2009,7,23,7,53,21,1));
check("2009-07-23T00:00:00.000-07:00", dd(2009,7,23,7,0,0,0));
check("2009-07-23T24:00:00.000-07:00", dd(2009,7,24,7,0,0,0));
|