JavaScript - 日期



Date 物件是 JavaScript 語言內建的一種資料型別。Date 物件使用 `new Date()` 建立,如下所示。

建立 Date 物件後,許多方法允許你對其進行操作。大多數方法只是允許你使用本地時間或 UTC(通用或 GMT)時間獲取和設定物件的年、月、日、時、分、秒和毫秒欄位。

ECMAScript 標準要求 Date 物件能夠以毫秒精度表示 1970 年 1 月 1 日前後 1 億天內的任何日期和時間。這是正負 273,785 年的範圍,因此 JavaScript 可以表示到 275755 年的日期和時間。

語法

可以使用以下任何語法使用 Date() 建構函式建立 Date 物件:

new Date( )
new Date(milliseconds)
new Date(datestring)
new Date(year,month,date[,hour,minute,second,millisecond ])

注意 - 方括號中的引數始終是可選的。

引數

  • 無引數 - 無引數時,Date() 建構函式建立一個設定為當前日期和時間的 Date 物件。
  • 毫秒數 - 傳遞一個數值引數時,它將被視為日期的內部數值表示(以毫秒為單位),如同 `getTime()` 方法返回的值。例如,傳遞引數 5000 將建立一個表示 1970 年 1 月 1 日午夜後五秒的日期。
  • 日期字串 - 傳遞一個字串引數時,它是一個日期的字串表示,格式為 `Date.parse()` 方法接受的格式。
  • 7 個引數 - 使用上面顯示的建構函式的最後一種形式。以下是每個引數的描述:
    • - 表示年份的整數。
    • - 表示月份的整數,從 0(一月)到 11(十二月)。
    • - 表示月份中的日的整數。
    • - 表示一天中的小時的整數(24 小時制)。
    • - 表示時間讀數中分鐘部分的整數。
    • - 表示時間讀數中秒部分的整數。
    • 毫秒 - 表示時間讀數中毫秒部分的整數。

返回值

它返回包含日、月、日期、年、小時、分鐘、秒和時區的日期字串,如下所示。

Wed Aug 09 2023 09:24:03 GMT+0530 (India Standard Time)

JavaScript 日期參考

在 JavaScript 中,Date 物件提供用於建立、操作和格式化日期和時間的方法。此處列出了 Date 類中存在的所有方法:

JavaScript 日期方法

以下是與 Date 一起使用的方法及其說明。

Date 靜態方法

這些方法使用 Date 物件呼叫:

序號 名稱和描述
1 Date.parse()

分析日期和時間的字串表示形式,並返回該日期的內部毫秒錶示形式。

2 Date.UTC()

返回指定 UTC 日期和時間的毫秒錶示形式。

Date 方法

這些方法使用 Date 物件的例項呼叫:

序號 名稱和描述
1 getDate()

根據本地時間返回指定日期的月份中的天數。

2 getDay()

根據本地時間返回指定日期的星期幾。

3 getFullYear()

根據本地時間返回指定日期的年份。

4 getHours()

根據本地時間返回指定日期的小時。

5 getMilliseconds()

根據本地時間返回指定日期的毫秒。

6 getMinutes()

根據本地時間返回指定日期的分鐘。

7 getMonth()

根據本地時間返回指定日期中的月份。

8 getSeconds()

根據本地時間返回指定日期中的秒數。

9 getTime()

返回指定日期的數值,表示自1970年1月1日00:00:00 UTC以來的毫秒數。

10 getTimezoneOffset()

返回當前區域設定的時區偏移量(以分鐘為單位)。

11 getUTCDate()

根據世界標準時間返回指定日期中的月份中的天數(日期)。

12 getUTCDay()

根據世界標準時間返回指定日期中的星期幾。

13 getUTCFullYear()

根據世界標準時間返回指定日期中的年份。

14 getUTCHours()

根據世界標準時間返回指定日期中的小時。

15 getUTCMilliseconds()

根據世界標準時間返回指定日期中的毫秒數。

16 getUTCMinutes()

根據世界標準時間返回指定日期中的分鐘數。

17 getUTCMonth()

根據世界標準時間返回指定日期中的月份。

18 getUTCSeconds()

根據世界標準時間返回指定日期中的秒數。

19 setDate()

根據本地時間設定指定日期中的月份中的天數。

20 setFullYear()

根據本地時間設定指定日期中的年份。

21 setHours()

根據本地時間設定指定日期中的小時。

22 setMilliseconds()

根據本地時間設定指定日期中的毫秒數。

23 setMinutes()

根據本地時間設定指定日期中的分鐘數。

24 setMonth()

根據本地時間設定指定日期中的月份。

25 setSeconds()

根據本地時間設定指定日期中的秒數。

26 setTime()

將Date物件設定為自1970年1月1日00:00:00 UTC以來的毫秒數所表示的時間。

27 setUTCDate()

根據世界標準時間設定指定日期中的月份中的天數。

28 setUTCFullYear()

根據世界標準時間設定指定日期中的年份。

29 setUTCHours()

根據世界標準時間設定指定日期中的小時。

30 setUTCMilliseconds()

根據世界標準時間設定指定日期中的毫秒數。

31 setUTCMinutes()

根據世界標準時間設定指定日期中的分鐘數。

32 setUTCMonth()

根據世界標準時間設定指定日期中的月份。

33 setUTCSeconds()

根據世界標準時間設定指定日期中的秒數。

34 toDateString()

以人類可讀的字串形式返回Date的“日期”部分。

35 toISOString()

返回ISO格式的日期字串。

36 toLocaleDateString()

使用當前區域設定的約定返回Date的“日期”部分的字串。

37 toJSON()

將日期轉換為字串。

38 toLocaleString()

使用當前區域設定的約定將日期轉換為字串。

39 toLocaleTimeString()

使用當前區域設定的約定返回Date的“時間”部分的字串。

40 toString()

返回表示指定Date物件的字串。

41 toTimeString()

以人類可讀的字串形式返回Date的“時間”部分。

42 toUTCString()

使用世界標準時間約定將日期轉換為字串。

43 valueOf()

返回Date物件的原始值。

Date 物件建構函式

以下是 JavaScript 中的 Date 物件建構函式:

序號 名稱和描述
1 Date()

返回今天的日期和時間。

示例:建立 JavaScript Date 物件

在下面的示例中,我們建立了一個日期物件的新的例項。在輸出中,您可以看到它返回當前時間。

<html>
<head>
   <title> JavaScript - Date object </title>
</head>
<body>
<p id = "output"> </p>
<script>
   const date = new Date();
   document.getElementById("output").innerHTML = 
      "Today's date is : " + date;
</script>
</body>
</html>

輸出

如果我們執行上面的程式,它將返回當前時間。

示例:設定自定義日期

在下面的示例中,我們傳遞自定義日期字串作為 Date() 建構函式的引數來建立自定義日期。

Date() 建構函式返回標準日期字串,您可以在輸出中看到。

<html>
<head>
    <title> JavaScript - Date object </title>
</head>
<body>
<p id = "output"> </p>
<script>
   const date = new Date("August 19, 2024 09:30:54");
   document.getElementById("output").innerHTML = 
      "The custom date is : " + date;
</script>
</body>
</html>

輸出

如果我們執行上面的程式,它將返回提供的自定義時間。

示例

在下面的示例中,我們將毫秒作為 Date() 建構函式的引數。如果您傳遞正毫秒作為引數,則物件將根據1970年1月1日00:00:00 + 毫秒返回日期。

否則,如果傳遞負毫秒作為引數,則它將根據1970年1月1日00:00:00 - 毫秒返回日期。

<html>
<head>
   <title> JavaScript - Date object </title>
</head>
<body>
<p id = "output"> </p>
<script>
   const output = document.getElementById("output");
   let date = new Date(999999999999);
   output.innerHTML += "The Date after 1st January, 1970 is - " + date + "<br>";
   date = new Date(-999999999999);
   output.innerHTML += "The Date before 1st January, 1970 is - " + date;
</script>
</body>
</html>

輸出

它將返回1970年1月1日之後和之前的日期作為結果。

示例:用7個引數構造日期

在下面的示例中,我們傳遞年份、月份、日期、小時、分鐘、秒和毫秒作為 Date() 建構函式的引數。Date() 建構函式返回完整的日期字串,您可以在輸出中看到。

<html>
<head>
   <title> JavaScript - Date object </title>
</head>
<body>
<p id = "output"> </p>
<script>
   const date = new Date(2001, 5, 14, 6, 43, 58, 342);
   document.getElementById("output").innerHTML = 
      "The custom date is : " + date;
</script>
</body>
</html>

輸出

如果我們執行上面的程式,它將返回提供的自定義時間。

但是,您可以使用Date物件的不同的方法來格式化日期字串。讓我們看下面的例子。

示例:格式化日期字串

在下面的示例中,使用了三種不同的方法來格式化日期字串。

toDateString() 方法只從日期字串中提取日期,並刪除時間部分。

toISOString() 方法將日期字串轉換為ISO格式。

toUTCString() 方法將日期字串轉換為UTC時間格式。

<html>
<head>
   <title> JavaScript - Formatting the date </title>
</head>
<body>
<p id = "output"> </p>
<script>
   const date = new Date(999999999999);
   document.getElementById("output").innerHTML += 
      "The Date after 1st January, 1970 is: " + date.toDateString() + "<br>"+
      "The Date after 1st January, 1970 is: " + date.toISOString() + "<br>"+
      "The Date after 1st January, 1970 is: " + date.toUTCString();
</script>
</body>
</html>

輸出

它將分別返回上面提供的方法的輸出。

廣告