Test intl402/ch12/12.1/12.1.1_18.js problem

Norbert Lindenberg ecmascript at norbertlindenberg.com
Thu Aug 16 17:29:10 PDT 2012


InitializeDateTimeFormat only determines which date time components will be shown how in formatted strings. The actual conversion from a date (a number of milliseconds from January 1, 1970, midnight UTC) to corresponding year/month/day/hour/minute/second values is done by the ToLocalTime abstract operation, which is specified to take the time zone into consideration. The FormatDateTime abstract operation combines the output of the two to produce a final formatted string.

Norbert


On Aug 16, 2012, at 9:15 , Phillips, Addison wrote:

>> 
>> So yes, I think we can change the spec to set the [[hour12]] internal property
>> only if the [[hour]] internal property is present after step 28 of
>> InitializeDateTimeFormat. That's similar to how [[currency]] depends on
>> [[style]] in InitializeNumberFormat.
>> 
> 
> Looking at the steps involved, you haven't taken account of the time zone offset when you pass step 28, so you can't omit setting the hour internal property, even if you're not going to display the hour field in the resulting format. That is, "2012-08-15T22:00:00Z" wants to display as "August 16, 2012" with a time zone of "Asia/Tokyo". Or did I miss something?
> 
> Addison
> 



More information about the es-discuss mailing list