Charles Hong 已發佈 2019-10-14

JavaScript 取得各國的日期與時間

取得本地的日期與時間

  • Date.prototype.toLocaleString() 方法,取得本地的日期與時間

// 建立 Date 物件再使用 toLocaleString() 方法

var date = new Date().toLocaleString();
console.log(date);  // "2019/10/11 下午3:25:00"
  • Date.prototype.toLocaleDateString() 方法,取得本地的日期

// 建立 Date 物件再使用 toLocaleDateString 方法

var date = new Date().toLocaleDateString();
console.log(date);  // "2019/10/11"
  • Date.prototype.toLocaleTimeString() 方法,取得本地的時間

// 建立 Date 物件再使用 toLocaleTimeString() 方法

var date = new Date().toLocaleTimeString();
console.log(date);  // "下午3:25:00"

取得其他國家的日期和時間

加入 locales, options 這二個參數

dateObj.toLocaleString([locales[, options]])
  • locales: 當地時間排序及格式

// 英國當地顯示方式: 日-月-年排序以及 24 小時制,沒有 AM/PM

var date = new Date().toLocaleString('en-GB');
console.log(date); // "11/10/2019, 15:25:00"
// 韓國當地顯示方式: 年-月-日排序以及 12 小時制,有 AM/PM

var date = new Date().toLocaleString('ko-KR');
console.log(date); // "2019. 10. 11. 오후 5:10:47"
  • options: 設定時區參數的物件,要有 timeZone 這個參數,才能顯示其他國家的日期和時間!

var options = {
  day: 'numeric',    //(e.g., 1)
  month: 'short',    //(e.g., Oct)
  year: 'numeric',   //(e.g., 2019)
  hour: '2-digit',   //(e.g., 02)
  minute: '2-digit', //(e.g., 02)          
  hour12: false,     // 24 小時制
  timeZone: 'America/New_York' // 美國/紐約
};

var date = new Date().toLocaleString('en-US', options);
console.log(date); // "Oct 11, 2019, 05:00"

UTC & GMT 是什麼?

相信大家時常看到或者聽到 GMT 和 UTC 這二個名詞,而 GMT 和 UTC 在一般使用的情況下沒有差別,由於台灣所屬的時區比世界協調時間快 8 小時,所以台灣的時區是 UTC+8 或是 GMT+8。

UTC: 世界協調時間(Coordinated Universal Time)是最主要的世界時間標準,其以原子時秒長為基礎,在時刻上儘量接近於格林威治標準時間。世界協調時間是世界上調節時鐘和時間的主要時間標準,它與0度經線的平太陽時相差不超過1秒,並不遵守夏令時。同時也是最接近格林威治標準時間(GMT)的幾個替代時間系統之一。對於大多數用途來說,UTC 時間被認為能與 GMT 時間互換,但 GMT 時間已不再被科學界所確定。(維基百科)

GMT: 格林威治標準時間(Greenwich Mean Time)是指位於英國倫敦郊區的皇家格林威治天文台當地的平太陽時,因為本初子午線被定義爲通過那裡的經線。(維基百科)

Demo

參考資料

關於筆者

暱稱:Charles Hong

文章列表 文章列表