JavaScript - 日期格式:初学者的指南

你好,有抱负的JavaScript开发者們!今天,我們將要深入探索JavaScript中日期格式的迷人世界。如果你以前從未寫過一行代碼,也不要擔心——我將成為你這次旅程中的友好導航,正如我過去幾年來為無數學生所做的那樣。所以,來一杯咖啡(或者如果你喜歡,來一杯茶),我們開始吧!

JavaScript - Date Formats

日期格式是什麼?

在我們投入代碼之前,讓我們先來討論一下日期格式究竟是什麼。把它們當作表示特定時刻的不同方式。就像你可能會說 "April 1, 2023" 或者 "1/4/23" 來表示同一天,計算機也有各種方式來表達日期。

在JavaScript中,我們有一個內置的 Date 對象來幫助我們處理日期和時間。這就像在我們的代碼中有一個超級智能的日曆!

JavaScript中的常見日期格式

讓我們看一下一些你最常遇到的日期格式:

1. ISO日期格式

這是國際上使用的標準格式。它看起來像這樣:"YYYY-MM-DD"。

let today = new Date();
console.log(today.toISOString().split('T')[0]);

在這個例子中,new Date() 創建一個當前日期和時間的日期對象。然後我們將它轉換為ISO格式,並分割以獲取日期部分。如果你在2023年4月1日運行這段代碼,你會看到:"2023-04-01"。

2. 短日期格式

這是一個更緊湊的格式:"MM/DD/YYYY"。

let today = new Date();
console.log(today.toLocaleDateString('en-US'));

這將輸出類似於 "4/1/2023" 的內容,表示2023年4月1日。

3. 長日期格式

這個格式會拼寫出月份:"Month DD, YYYY"。

let today = new Date();
console.log(today.toLocaleDateString('en-US', { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' }));

這將給你類似於 "Saturday, April 1, 2023" 的結果。

創建日期對象

現在我們已經看到了一些格式,讓我們來看看創建日期對象的不同方式:

1. 當前日期和時間

let now = new Date();
console.log(now);

這創建了一個當前時刻的日期對象。

2. 指定日期和時間

let birthday = new Date('1990-05-15T13:30:00');
console.log(birthday);

這創建了一個1990年5月15日下午1:30的日期對象。

3. 使用單個組件

let christmas = new Date(2023, 11, 25); // 注意:月份是從0開始計數的
console.log(christmas);

這創建了一個2023年12月25日的日期對象(記住,在JavaScript中,月份是從0開始計數的,所以11代表12月)。

日期操作

現在我們知道如何創建日期,讓我們來看看一些常見的操作:

1. 獲取日期組件

let today = new Date();
console.log("Year:", today.getFullYear());
console.log("Month:", today.getMonth() + 1); // +1因為月份是從0開始計數的
console.log("Day:", today.getDate());
console.log("Hour:", today.getHours());
console.log("Minute:", today.getMinutes());
console.log("Second:", today.getSeconds());

這將輸出當前日期和時間的每個組件。

2. 格式化日期

JavaScript提供了多種方法來格式化日期:

let date = new Date('2023-04-01T12:00:00');

console.log(date.toDateString()); // "Sat Apr 01 2023"
console.log(date.toTimeString()); // "12:00:00 GMT+0000 (Coordinated Universal Time)"
console.log(date.toLocaleString()); // "4/1/2023, 12:00:00 PM"
console.log(date.toLocaleDateString()); // "4/1/2023"
console.log(date.toLocaleTimeString()); // "12:00:00 PM"

這些方法中的每一個都給你同一個日期的不同表示。

日期方法表

這裡是一些常見日期方法的便捷表格:

方法 描述 示例
getFullYear() 獲取年份(4位數) date.getFullYear() // 2023
getMonth() 獲取月份(0-11) date.getMonth() // 3 (對於4月)
getDate() 獲取月份中的日期(1-31) date.getDate() // 1
getDay() 獲取星期中的日期(0-6) date.getDay() // 6 (對於星期六)
getHours() 獲取小時(0-23) date.getHours() // 12
getMinutes() 獲取分鐘(0-59) date.getMinutes() // 0
getSeconds() 獲取秒(0-59) date.getSeconds() // 0
toDateString() 將日期轉換為可讀的字符串 date.toDateString() // "Sat Apr 01 2023"
toTimeString() 將時間轉換為可讀的字符串 date.toTimeString() // "12:00:00 GMT+0000 (Coordinated Universal Time)"

結論

好了,各位!我們已經穿越了JavaScript日期格式的領地,從創建日期對象到以各種方式格式化它們。記住,處理日期可能最初看起來有些複雜,但隨著練習,你很快就能像專業人士一樣處理它們。

正如我總是告訴我的學生,掌握編程概念關鍵在於實驗。嘗試這些示例,修改它們,看看會發生什麼。不要害怕犯錯誤——這通常是學習的最佳時機!

繼續編程,持續學習,最重要的是,樂在其中。在你意識到之前,你會成為那個向朋友解釋日期格式的人(無論他們是否想聽這些內容)!

Credits: Image by storyset