如何用时刻设置时区?

How to set timezone with moment?

我正在使用 moment 获取服务器时间。

moment.tz.setDefault("Asia/Kolkata");

var now = new Date();
var _p_date = moment.tz(now, zone).format(); 

插入时间_p_date = 2016-01-05T18:32:00+05:30 但是在数据库中日期变量是 DATETIME 类型。时间保存为2016-01-0518:32:00。 之后,当我与此进行比较以获得 time_ago 功能时。给我错误的估计。

使用时间前 = moment("2016-01-05T18:32:00.000Z").fromNow(); // 正在显示 5 小时后

由于您的初始时区丢失,您必须使用选定的时区创建 moment.tz 对象。试试这个 plunker

var date = moment.tz(moment("2016-01-05T18:32:00.000Z", "YYYY-MM-DDTHH:mm")
    .format('YYYY-MM-DD HH:mm'), 'Asia/Kolkata');


console.log(date.fromNow());