Javascript moment.js支持哪种格式的区域缩写

Javascript moment.js支持哪种格式的区域缩写,javascript,momentjs,datetime-format,Javascript,Momentjs,Datetime Format,我找不到将日期转换为缩写字符串的格式,例如: moment().format('MM/DD/YYYY hh:MM A z')转换为2019年9月17日05:00 PM 有没有办法将其转换为太平洋标准时间2019年09月17日05:00?(其中PSt是我的浏览器的TZ)您可以使用时刻时区库(带有时区数据),并使用时刻.TZ.guess()猜测用户的时区 console.log(附加时区('09/17/2019 05:00 PM'){ 时区:“美国/洛杉矶”, 日期格式:“MM/DD/YYYY h

我找不到将日期转换为缩写字符串的格式,例如:

moment().format('MM/DD/YYYY hh:MM A z')
转换为
2019年9月17日05:00 PM


有没有办法将其转换为太平洋标准时间2019年09月17日05:00?(其中PSt是我的浏览器的TZ)

您可以使用
时刻时区
库(带有时区数据),并使用
时刻.TZ.guess()猜测用户的时区

console.log(附加时区('09/17/2019 05:00 PM'){
时区:“美国/洛杉矶”,
日期格式:“MM/DD/YYYY hh:MM A”
}));
函数附加时区(时间戳、选项){
选项=选项| |{};
让zone=options.timeZone | | moment.tz.guess();
设frmt=options.dateFormat | |'YYYY-MM-DDTHH:MM:ss.SSSZ';
返回时刻(timestamp,frmt).format(frmt)+''+moment().tz(zone.format('z');
}


您退房了吗?这将根据时区更改时间,是否有任何方法保持日期时间不变?您能否提供一个示例,说明“保持日期时间不变”的含义?@RaT好的,我明白您的意思。。。你只是想连接时区?我将用一个例子进行更新。@RaT我添加了输入时间戳的解析/格式设置,但这只是无关的…感谢更新,但这同样不能给出DST更改的边缘情况的正确缩写,假设我在UTC,并且我尝试获取矩().tz(zone.format('z'))如果区域为美国/洛杉矶,日期为2019年10月3日4:00,则应给出PDT,但由于时区转换,它将日期时间更改为2019年9月3日20:00,并给出缩写为PST。