JS如何在不更改语言环境的情况下更改时区(时间格式)

JS How to change timezone without changing locale (time format)

我从后端获取时间作为数字。 我将日期设置为:

const time = 1571307720000;
const date = new Date();
date.setTime(time);
date.toLocaleString();

我将从后端获取时区,我想在 toLocaleString() 中设置它,但我不想更改语言环境(时间格式),但在每个页面中我都看到:

date.toLocaleString('es-US', { timeZone: 'Asia/Seoul' })

如果没有第一个字符串,我将无法使用 date.toLocaleString 函数。

是否可以设置时区但使用本地时间格式?

根据 Date.prototype.toLocaleString() 的 MDN 条目,

See the Intl.DateTimeFormat()constructor for details on these parameters and how to use them.

Intl.DateTimeFormat() 的条目说,

To use the browser's default locale, pass an empty array.

所以:

date.toLocaleString([], { timeZone: 'Asia/Seoul' })