我可以使用以下命令獲取時區偏移量:
new Date().getTimezoneOffset()-> -330 和使用時刻
moment().utcOffset()為 330。
但是,如何獲得 ±hh:mm 格式?
uj5u.com熱心網友回復:
您是否正在努力實作這一目標?如果您愿意moment.js,可以使用.format格式化日期或時間。
const date = new Date();
let utc = moment(date).utcOffset()
console.log(moment(date).utcOffset(utc).format("YYYY-MM-DD HH:mm:ss Z"))
//and for ` 00:00` it will be :
console.log('for GMT 0000 : ' moment(date).tz('Africa/Monrovia').format('YYYY-MM-DD HH:mm:ss Z'))
<script src="https://momentjs.com/downloads/moment.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.23/moment-timezone-with-data-2012-2022.min.js"></script>
參考:顯示
uj5u.com熱心網友回復:
如果沒有第三方庫或使用功能手動轉換值,您將無法做到這一點。
您可以執行以下操作:
const offset = new Date().getTimezoneOffset();
let offsetHours = parseInt(Math.abs(offset/60));
let offsetMins = Math.abs(offset%60);
let formattedOffset;
if (offsetHours < 10) offSetHours = '0' offsetHours;
if (offsetMins < 10) offsetMins = '0' offsetMins;
if (offset < 0) {
formattedOffset = ' ' offsetHours ':' offsetMins;
} else if (offset > 0) {
formattedOffset = '-' offsetHours ':' offsetMins;
} else if (offset === 0) {
formattedOffset = 'Z';
}
那應該讓你非常接近。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/510763.html
