我有日期字符串,如下所示。我想要像YYYY-MM-DD HH:mm:SS
這樣的格式請幫助我。Javascript日期格式(更喜歡的時刻)
var str1 = '2018-02-20T10:10:00.000+01:00';
格式化 - > '2018年2月20日10:10:00'
var str2 = '2018-02-20T11:50:00.000+00:00';
格式化 - > '2018年2月20日11:50:00'
謝謝
我有日期字符串,如下所示。我想要像YYYY-MM-DD HH:mm:SS
這樣的格式請幫助我。Javascript日期格式(更喜歡的時刻)
var str1 = '2018-02-20T10:10:00.000+01:00';
格式化 - > '2018年2月20日10:10:00'
var str2 = '2018-02-20T11:50:00.000+00:00';
格式化 - > '2018年2月20日11:50:00'
謝謝
如果您喜歡時刻,那麼使用格式化方法應該很容易。
var offset = moment().utcOffset() - moment(str).utcOffset();
console.log(moment(str).add(offset, 'minute').format('YYYY-MM-DD hh:mm:ss'));
在這裏,你有代碼的例子:
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/
謝謝@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');
它的輸出>「2018年2月20日12點10分零零秒」 //使用我們的語言環境 我不想這樣。 –
@ Mr.Ayanlar我剛編輯過使用utc偏移量。它實際上改變了時間,但輸出應該沒問題。 – emil
var offset = moment()。parseZone()。utcOffset() - moment.parseZone(str).utcOffset(); var result = moment(str).add(offset * -1,'minute')。format('YYYY-MM-DD HH:mm:SS') 沒關係,謝謝 –