如何操作 JavaScript 的 Date 对象?


要操作 JavaScript 的 Date 对象,您可以使用 get 或 set 方法和属性。例如,在 JavaScript 中设置小时或获取分钟。

创建 Date 对象后,许多方法允许您对其进行操作。大多数方法只允许您获取和设置对象的年份、月份、日期、小时、分钟、秒和毫秒字段,使用本地时间或 UTC(通用或 GMT)时间。

以下是用于 Date 的方法列表及其说明。

序号 方法及说明
1

date()

返回今天的日期和时间

2

getDate()

根据本地时间返回指定日期的月份中的日期。

3

getDay()

根据本地时间返回指定日期的一周中的日期

4

getFullYear()

根据本地时间返回指定日期的年份。

5

getHours()

根据本地时间返回指定日期的小时。

6

getMilliseconds()

根据本地时间返回指定日期的毫秒。

7

getMinutes()

根据本地时间返回指定日期的分钟。

8

getMonth()

根据本地时间返回指定日期的月份

9

getSeconds()

根据本地时间返回指定日期的秒数。

10

setDate()

根据本地时间设置指定日期的月份中的日期。

11

setFullYear()

根据本地时间设置指定日期的完整年份。

12

setHours()

根据本地时间设置指定日期的小时。

13

setMilliseconds()

根据本地时间设置指定日期的毫秒。

14

setMinutes()

根据本地时间设置指定日期的分钟。

让我们详细了解以下内容:

  • 创建 Date 对象。

  • 格式化 Date 对象。

  • 更新 Date 对象。

创建 Date 对象

Date 对象可以通过多种方式创建。可以使用 Date 构造函数或 date 对象的 now() 方法创建当前日期和时间的简单 Date 对象。我们可以通过将日期字符串传递到 Date 对象构造函数中来为特定日期和时间创建一个 Date 对象。

语法

用户可以按照以下语法创建 Date 对象:

  • 当前日期和时间

let date = new Date()
// Thu Aug 18 2022 19:54:39 GMT+0530 (India Standard Time)
date = Date.now()
// 1660832679758

在以上语法中,使用 Date 构造函数创建 Date 对象提供当前日期和时间的格式化字符串,而 now() 方法提供自 1970 年 1 月 1 日 00:00:00(UTC)以来的总毫秒数。

  • 使用 Date 构造函数参数

let date = new Date("2000-11-09")
// Thu Nov 09 2000 05:30:00 GMT+0530 (India Standard Time)
date = new Date("2000-11-09T07:00Z")
// Thu Nov 09 2000 12:30:00 GMT+0530 (India Standard Time)
date = new Date("2000-11-09T07:00")
// Thu Nov 09 2000 07:00:00 GMT+0530 (India Standard Time)
date = new Date("2000-11-09T07:00+05:30")
// Thu Nov 09 2000 07:00:00 GMT+0530 (India Standard Time)

在以上语法中,用户可以看到日期和时间构造函数参数字符串具有如下格式:

YYYY-MM-DDTHH:mm:ss.sssZ

其中,

  • YYYY:年份

  • MM:一年中的月份(01-12)

  • DD:日期(01 到 31)

  • HH:24 小时制的小时(0 到 23)

  • mm:分钟(00 到 59)

  • ss:秒(00 到 59)

  • sss:毫秒(000 到 999)

  • T 是字符串中日期和时间之间的分隔符。

  • Z 表示 UTC 时间。否则,时间被视为本地时间。如果未使用 Z,则在字符串末尾使用 "+hh:mm" 或 "-hh:mm" 以获取本地时区数据和时间。

  • 使用时间戳

let date = new Date(1660838032771)
// Thu Aug 18 2022 21:23:52 GMT+0530 (India Standard Time)

在以上语法中,我们使用时间戳创建了一个 Date 对象。

格式化 Date 对象

使用不同的方法,我们可以将 Date 对象的字符串格式化为多种形式。下面我们描述了一些用于格式化 Date 对象字符串的方法。

let date = new Date("2000-11-09")
date.toString()
// Thu Nov 09 2000 05:30:00 GMT+0530 (India Standard Time)
date.toDateString()
// Thu Nov 09 2000
date.toLocaleString()
// 11/9/2000, 5:30:00 AM
date.toLocaleDateString()
// 11/9/2000
date.toLocaleTimeString()
// 5:30:00 AM
date.toGMTString()
// Thu, 09 Nov 2000 00:00:00 GMT
date.toISOString()
// 2000-11-09T00:00:00.000Z
date.toUTCString()
// Thu, 09 Nov 2000 00:00:00 GMT
date.toTimeString()
// 05:30:00 GMT+0530 (India Standard Time)
date.getTime()
// 973728000000

在以上语法中,我们展示了不同的方法来格式化 Date 对象,以及它们返回的值。

示例

在此示例中,我们在按钮点击后将 Date 对象格式化为不同的形式。

<html> <body> <p> Manipulate JavaScript's Date object by <i> Formatting the Date string </i></p> <p id = "element"></p> <button onclick = "format()"> Format Date</button> <p id = "root"></p> <script> let root = document.getElementById('root') const date = new Date() document.getElementById('element').innerHTML = "<b>Date: </b>" + date; function format() { let str = '<b> Using toLocaleString(): </b> ' + date.toLocaleString() + '<br />' str += ' <b> Using toISOString(): </b> ' + date.toISOString() + '<br />' str += '<b> Using getTime(): </b> ' + date.getTime() root.innerHTML = str } </script> </body> </html>

更新 Date 对象

Date 对象可以通过使用一些方法来更新。在下面,我们讨论了一些更新 Date 对象的方法。

const date = new Date("2022-01-30")
// Sun Jan 30 2022 05:30:00 GMT+0530 (India Standard Time)
date.setYear(1947)
// Thu Jan 30 1947 05:30:00 GMT+0530 (India Standard Time)
date.setMonth(7)
// Sat Aug 30 1947 05:30:00 GMT+0530 (India Standard Time)
date.setDate(15)
// Fri Aug 15 1947 05:30:00 GMT+0530 (India Standard Time)
date.setHours(10)
// Fri Aug 15 1947 10:30:00 GMT+0530 (India Standard Time)
date.setMinutes(21)
// Fri Aug 15 1947 10:21:00 GMT+0530 (India Standard Time)
date.setUTCDate(1)
// Fri Aug 01 1947 10:21:00 GMT+0530 (India Standard Time)
date.setUTCMinutes(56)
// Fri Aug 01 1947 10:26:00 GMT+0530 (India Standard Time)

在以上语法中,这些方法用于更新日期对象,例如 setYear() 方法更新 Date 对象的年份。类似地,每个方法都更新 Date 对象的不同属性。

示例

在此示例中,我们使用了一些方法来使用不同的按钮点击事件更新 Date 对象。

<html> <body> <p> Manipulate JavaScript's Date object by <i> Updating the Date object</i></p> <button onclick = "updateYear()"> Update Year to 2022</button> <button onclick = "updateMonth()"> Update Month to August</button> <button onclick = "updateDate()"> Update Date to 15</button> <p id = "root"></p> <script> let root = document.getElementById('root') let status = document.getElementById('status') const date = new Date("2000-11-09") root.innerHTML = " <b>Date: </b> " + date; function updateYear() { date.setYear(2022) root.innerHTML = " <b> Date: </b> " + date; } function updateMonth() { date.setMonth(7) root.innerHTML = " <b> Date: </b> " + date; } function updateDate() { date.setDate(15) root.innerHTML = " <b> Date: </b> " + date; } </script> </body> </html>

在本教程中,我们讨论了借助不同的示例创建、格式化和更新 Date 对象。

更新于: 2022 年 10 月 20 日

2K+ 浏览量

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告