亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Intl.DateTimeFormat 顯示時間為 24:59

Intl.DateTimeFormat 顯示時間為 24:59

慕尼黑5688855 2022-06-05 15:56:49
大家好| 只是檢查我是否做錯了什么。下面的代碼給了我時間 = 24:59,在布拉格 (GMT+1)。使用鉻。new Intl.DateTimeFormat(  'en',  {     weekday: 'long',     month: 'long',     day: 'numeric',     hour: 'numeric',     minute: 'numeric',     hour12: false  } ).format(new Date('2020-03-11T23:59:00Z')) // "Thursday, March 12, 24:59"使用 .getHours() 時,我會得到正確的 0 值。new Date('2020-03-11T23:59:00Z'); // Thu Mar 12 2020 00:59:00 GMT+0100 (Central European Standard Time)new Date('2020-03-11T23:59:00Z').getHours(); // 0感謝您的建議,我沒有發現任何與此相關的問題。
查看完整描述

2 回答

?
吃雞游戲

TA貢獻1829條經驗 獲得超7個贊

您的代碼"Thursday, March 12, 00:59"在 Firefox 和"Thursday, March 12, 24:59"Chrome (80.0.3987.149) 中提供給我


Chrome 80 https://support.google.com/chrome/thread/29828561?hl=en似乎存在一個錯誤,自 2 月起開放,但關于是否修復以及如何修復的說法不多??紤]支持它。


根據那里發布的評論,您可以通過將hour12屬性替換為hourCycle: 'h23'.


new Intl.DateTimeFormat(

  'en',

  {

     weekday: 'long',

     month: 'long',

     day: 'numeric',

     hour: 'numeric',

     minute: 'numeric',

     hourCycle: 'h23'

  }

 ).format(new Date('2020-03-11T23:59:00Z')

)

// "Thursday, March 12, 00:59"

這似乎對我有用


查看完整回答
反對 回復 2022-06-05
?
互換的青春

TA貢獻1797條經驗 獲得超6個贊

問題似乎是 HourCycle 和 langauge 的默認設置en,這是您所期望的h23,但 Chrome 正在使用h24. 您可以按照toniedzwiedz 的描述修復它,或者您可以為語言標簽提供合適的國家/地區代碼以強制 HourCycle 默認為h23,例如 GB:


let d = new Date(2020,2,1,0,23);

let opts = { hour12: false, hour: 'numeric' };


console.log(d.toLocaleString('en', opts)); // 24 (Chrome), 00 others

console.log(d.toLocaleString('en-GB', opts)); // 00 all


查看完整回答
反對 回復 2022-06-05
  • 2 回答
  • 0 關注
  • 319 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號