Override LocalTZA

Jonathan Adams pointlessjon at me.com
Tue Feb 19 21:52:56 PST 2013

I understand that an implementation of ECMAScript is expected to determine the local time zone adjustment [1]. 

This is really convenient -- most of the time. However, it would be great to override this for a given Date object. It doesn't appear that we can at the moment [2] or in ES6. 

If we could override this context, we can then take advantage of some of the other native methods such as Date.toString(), Date.getDate() etc. using our preferred, altered LocalTZA rather than users having to build horrible user-land functions [3] and wrestle with daylight savings time adjustments [4].

My particular use-case involves taking dates generated in CST, stored as UTC (this is good) but then I want to offer a list of dates relative to CST, but this is processed in a context with LocalTZA for PST. I can get away with faking it by calculating the difference in timezones and altering the timestamp used to generate a new Date object but, this is going to technically be off at some points in time (DST adjustment for example) and feels wrong/hacky. 


[1] http://people.mozilla.org/~jorendorff/es6-draft.html#sec-
[2] http://stackoverflow.com/questions/9369972/can-i-set-the-local-timezone-in-my-browser-via-javascript
[3] http://www.techrepublic.com/article/convert-the-local-time-to-another-time-zone-with-this-javascript/6016329
[4] https://mail.mozilla.org/pipermail/es-discuss/2011-March/013322.html

More information about the es-discuss mailing list