var utcDate = TZ.toUTC("2021-11-07 03:15:59.000", "America/New_York");
```
You can also use a date object as the source time, but the date's UTC time will be treated as **_relative to time zone_** rather than absolute (this is a workaround for JavaScript's lack of bi-directional timezone support).
```js
var utcDate = TZ.toUTC(
new Date("2021-11-07T03:15:59.000Z"),
"America/New_York"
);
```
```js
utcDate.toISOString();
// "2021-11-07T03:15:59.000-0500"
```
# Daylight Savings / Edge Cases
> In 2021 Daylight Savings (in the US)
>
> - begins at 2am on March 14th
> - ends at 2am on November 7th
>
> See <https://www.timeanddate.com/time/change/usa>.
Q: What happens in March when 2am is skipped?
- A: Although 2am is not a valid time, rather than throwing an error this library will resolve to 1am instead, which is an hour early in real ("tick-tock" or "monotonic") time.
```js
var utcDate = TZ.toUTC("2021-03-14 02:15:59.000", "America/New_York");
utcDate.toISOString();
// "2021-03-14T02:15:59.000-0400"
// (same as "2021-03-14T01:15:59.000-0500")
```
Q: What happens in November when 2am happens twice?
- A: Although both 2ams are distinguishable with ISO offset times, only the first can be resolved from a local time with this library.
```js
var utcDate = TZ.toUTC("2021-11-07 01:15:59.000", "America/New_York");
utcDate.toISOString();
// "2021-11-07T01:15:59.000-0400", same as "2021-11-07T05:15:59.000Z"
// (an hour before the 2nd 2am at "2021-11-07T01:15:59.000-0500")
```
# List of Time Zones
See the [Full List of Time Zones](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) on Wikipedia.