Javascript日期转换为格式的时区

时间:2016-03-17 10:13:49

标签: javascript momentjs

如何创建日期对象,然后使用时区和格式从日期字符串转换为另一个时区

var date="20160317T073000";
var format = "YYYYMMDDTHHmmss";
var timezone ="America/New_York"

var newTimezone="Asia/Kolkata"

我想将日期转换为newTimezone,我尝试使用moment.js,但是它转换为浏览器时区

date=moment(date,format); 
date.tz(timezone);

console.log(moment(date).format());

1 个答案:

答案 0 :(得分:1)

Moment.js似乎有:http://momentjs.com/timezone/

在时区之间转换日期

var newYork    = moment.tz("2014-06-01 12:00", "America/New_York");
var losAngeles = newYork.clone().tz("America/Los_Angeles");
var london     = newYork.clone().tz("Europe/London");

newYork.format();    // 2014-06-01T12:00:00-04:00
losAngeles.format(); // 2014-06-01T09:00:00-07:00
london.format();     // 2014-06-01T17:00:00+01:00

要转换格式,应该这样做:

'20160317T073000'.replace(/([0-9]{4})([0-9]{2})([0-9]{2})T([0-9]{2})([0-9]{2})([0-9]{2})/, '$1-$2-$3T$4:$5:$6')