I’m afraid the technical reason here is pretty confusing - you can read about it at Moment Timezone | Docs
POSIX compatibility requires that the offsets are inverted. Therefore, Etc/GMT-X will have an offset of
+X
and Etc/GMT+X will have an offset of-X
. This is a result of IANA’s Time Zone Database and not an arbitrary choice by Moment.js. Thus, using locality based identifiers is preferred over fixed-offset identifiers.
So, in IANA’s Time Zone database, Europe/Oslo is currently equivalent to Etc/GMT-1
Monday, November 8, 2021 7:00 PM
I do wonder if we could/should introduce our own UTC+1
, UTC+2
, timezone aliases (without the Etc/
prefix). (cc @joffreyjaffeux)