Javascript 在moment.js中格式化日期时如何保留时区?

Javascript 在moment.js中格式化日期时如何保留时区?,javascript,momentjs,Javascript,Momentjs,我有一个类似于2015-10-24T17:12-05:00的日期,我使用moment.js将其格式化如下: moment('2015-10-24T17:12-05:00').format('h:mm A'); 而不是在字符串中指定的时区中显示时间,moment.js似乎将其转换为我的计算机的时区。格式化时如何保留时区?var estTime='2019-09-01T14:30:00-04:00'; var istTime=“2019-10-01T23:20:00+05:30”; console

我有一个类似于
2015-10-24T17:12-05:00
的日期,我使用moment.js将其格式化如下:

moment('2015-10-24T17:12-05:00').format('h:mm A');
而不是在字符串中指定的时区中显示时间,moment.js似乎将其转换为我的计算机的时区。格式化时如何保留时区?

var estTime='2019-09-01T14:30:00-04:00';
var istTime=“2019-10-01T23:20:00+05:30”;
console.log(estTime,“,”矩(estTime).format(“hh:mm”),”矩.parseZone(estTime).format(“hh:mm”);
console.log(istTime,“,”矩(istTime).format(“hh:mm”),”矩.parseZone(istTime).format(“hh:mm”);
矩的字符串解析函数,如
矩(字符串)
矩。utc(字符串)
接受偏移量信息(如果提供),但将生成的矩对象转换为本地或utc时间。相反,
矩.parseZone()
解析字符串,但将生成的矩对象保留在固定偏移量时区中,并在字符串中提供偏移量

输出:

2019-09-01T14:30:00-04:00 02:30 02:30

2019-10-01T23:20:00+05:30 01:50 11:20


在他们的时区库中可能有一些相关的东西,但我没有看到一些你想要的东西@当我认为这只是一个做
moment(…).tz(x)的例子。format(…)
其中
x
是显示时间的时区。我已经有一段时间没看了。@JamesThorpe你说得有点对,但问题是,tz()需要像“America/Los_Angeles”这样的字符串,而我没有。我只有字符串中的偏移量。我想我必须编写自己的查找表,并将其映射到像“America/Los_Angeles”这样的名称。对。可能值得一看它保存内置时区的方式-它必须知道它们的偏移量是多少,也许有一种方法可以从表中反向查找现有的使用“HH”而不是“HH”在24小时内查看