Javascript日期格式(首选时刻)

时间:2017-07-14 11:25:11

标签: javascript momentjs

我有日期字符串,如下所示。我希望格式如YYYY-MM-DD HH:mm:SS请帮助我。

var str1 = '2018-02-20T10:10:00.000+01:00'; 

格式化 - > ' 2018-02-20 10:10:00'

var str2 = '2018-02-20T11:50:00.000+00:00';

格式化 - > ' 2018-02-20 11:50:00'

谢谢

3 个答案:

答案 0 :(得分:2)

如您所愿,如果您使用格式化方法应该很容易。

var offset = moment().utcOffset() - moment(str).utcOffset();

console.log(moment(str).add(offset, 'minute').format('YYYY-MM-DD hh:mm:ss'));

有关详情,请访问http://momentjs.com/docs/#/displaying/format/

答案 1 :(得分:0)

这里有一个代码示例:

function formatDate(date) {
  var hours = date.getHours();
  var minutes = date.getMinutes();
  var seconds = date.getSeconds();
  hours = hours ? hours : 12; // the hour '0' should be '12'
  minutes = minutes < 10 ? '0'+minutes : minutes;
  var strTime = hours + ':' + minutes + ":" + seconds;
  return  date.getFullYear() + "/" + (date.getMonth()+1) + "/" + date.getDate()+ " " + strTime;
}

var d = new Date();
var e = formatDate(d);
alert(e);

这里有jsfiddle示例: https://jsfiddle.net/6ccvkg5j/

答案 2 :(得分:0)

谢谢@emil。 我的回答是:

var str = '2018-02-20T03:10:00.000-01:00';
var offset = moment().parseZone().utcOffset() - moment.parseZone(str).utcOffset();
var result = moment(str).add(offset * -1, 'minute').format('YYYY-MM-DD HH:mm:SS');