UTC时间戳转换为选定的时区时间戳

时间:2018-11-30 16:01:02

标签: javascript angular

this.selectedTimezone="Pacific/Kiritimati"; 
     //this value will come from dropdown

this.records = data.body; // api响应

for(var i = 0; i

{

var d = new Date(this.records [i] ['startTimeStamp']);

//正在转换为系统时区日期格式。我希望这个可以选择时区转换。

var t1 = moment(d).tz(this.selectedTimezone).format();

// 2018-11-23T05:30:00 + 14:00

}

我希望此t1以完整日期格式显示,即2018年11月30日(星期五)09:00:00

2 个答案:

答案 0 :(得分:0)

请参见MomentMoment-timezone

// This will get "Pacific/Kiritimati" current timezone.
var datetime = moment().tz("Pacific/Kiritimati").format();
var timestamp = moment().tz("Pacific/Kiritimati").valueOf();
console.log(datetime);
console.log(timestamp);
<script src="https://rawgit.com/moment/moment/2.22.2/min/moment.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.23/moment-timezone-with-data.js"></script>

答案 1 :(得分:0)

var d1 = moment.tz(new Date(this.records [i] ['startTimeStamp']),this.selectedTimezone);

var键= d1.year()+“-” +('0'+(d1.month()+ 1))。slice(-2)+“-” +('0'+(d1。 date())。slice(-2);

var timeSlot =('0'+ d1.hour())。slice(-2)+“:” +('0'+ d1.minutes())。slice(-2);

示例:-

var d1 = moment.tz(new Date(2543622499000),“ Pacific / Kiritimati”);

var键= d1.year()+“-” +('0'+(d1.month()+ 1))。slice(-2)+“-” +('0'+(d1。 date())。slice(-2);     var timeSlot =('0'+ d1.hour())。slice(-2)+“:” +('0'+ d1.minutes())。slice(-2);

输出:-2050-08-09 15:48