How can I set the default timezone in node.js?
How do I set the default timezone in node.js?
Solution 1:
According to this google group thread, you can set the TZ environment variable before calling any date functions. Just tested it and it works.
> process.env.TZ = 'Europe/Amsterdam'
'Europe/Amsterdam'
> d = new Date()
Sat, 24 Mar 2012 05:50:39 GMT
> d.toLocaleTimeString()
'06:50:39'
> ""+d
'Sat Mar 24 2012 06:50:39 GMT+0100 (CET)'
You can't change the timezone later though, since by then Node has already read the environment variable.
Solution 2:
Another approach which seemed to work for me at least in Linux environment is to run your Node.js application like this:
env TZ='Europe/Amsterdam' node server.js
This should at least ensure that the timezone is correctly set already from the beginning.