📜  JavaScript |日期对象(1)

📅  最后修改于: 2023-12-03 15:01:39.810000             🧑  作者: Mango

JavaScript | 日期对象

在 JavaScript 中,我们可以使用 Date() 对象创建一个日期实例。Date() 对象允许我们对日期进行各种操作,包括获取日期、设置日期、计算日期、转换日期格式等等。

创建 Date 对象

要创建一个 Date() 对象,我们可以使用以下语法:

var now = new Date();

这将创建一个表示当前日期和时间的 Date 对象。

我们也可以使用以下语法指定日期和时间:

var specificDate = new Date(year, month, day, hours, minutes, seconds, milliseconds);

其中,year、month、day、hours、minutes、seconds、milliseconds 分别代表需要设置的年、月、日、时、分、秒、毫秒。这些参数中,只有 year 和 month 是必须的,其余参数均为可选的。需要注意的是,month 参数从 0 开始计数(0 表示 1 月,1 表示 2 月,以此类推)。

例如,以下是创建一个代表 2021 年 9 月 30 日 21:30:00 的 Date 对象的语法:

var specificDate = new Date(2021, 8, 30, 21, 30, 0, 0);
获取日期

要获取一个 Date 对象代表的日期,我们可以使用以下方法:

getDate()

获取 Date 对象的日(1-31)。

var date = new Date();
var day = date.getDate(); // 返回当天的日期(1-31)
getMonth()

获取 Date 对象的月(0-11)。

var date = new Date();
var month = date.getMonth(); // 返回当月的月份(0-11)
getFullYear()

获取 Date 对象的年份。

var date = new Date();
var year = date.getFullYear(); // 返回当年的年份

除了上述方法,我们还可以获取 Date 对象的小时、分钟、秒钟、毫秒等信息。这些方法包括:

  • getHours()
  • getMinutes()
  • getSeconds()
  • getMilliseconds()
设置日期

要设置一个 Date 对象代表的日期,我们可以使用以下方法:

setDate()

设置 Date 对象的日。

var date = new Date();
date.setDate(15); // 将日期设置为当月的 15 日
setMonth()

设置 Date 对象的月。

var date = new Date();
date.setMonth(5); // 将日期设置为 6 月份(从 0 开始计数)
setFullYear()

设置 Date 对象的年份。

var date = new Date();
date.setFullYear(2022); // 将日期设置为 2022 年

我们也可以设置 Date 对象的小时、分钟、秒钟、毫秒等信息。这些方法包括:

  • setHours()
  • setMinutes()
  • setSeconds()
  • setMilliseconds()
计算日期

除了获取和设置日期,我们还可以对日期进行各种计算操作,例如计算两个日期之间的时间差、计算一个日期之后的时间等等。

getTime()

getTime() 方法返回一个日期的 UNIX 时间戳,即从 1970 年 1 月 1 日 0 点开始到该日期的毫秒数。

var date = new Date();
var timestamp = date.getTime(); // 返回 UNIX 时间戳
getTimezoneOffset()

getTimezoneOffset() 方法返回本地时间与格林威治标准时间(GMT)之间的时间差,单位为分钟。

var date = new Date();
var offset = date.getTimezoneOffset(); // 返回本地时间与 GMT 之间的时间差(单位:分钟)
计算日期之间的时间差

我们可以使用以下方法计算两个日期之间的时间差:

var date1 = new Date(2021, 0, 1); // 创建一个 Date 对象,表示 2021 年 1 月 1 日
var date2 = new Date(2022, 0, 1); // 创建一个 Date 对象,表示 2022 年 1 月 1 日
var timeDiff = date2.getTime() - date1.getTime(); // 计算时间差,单位为毫秒
var daysDiff = timeDiff / (1000 * 3600 * 24); // 将时间差转换成天数
计算一个日期之后的时间

我们可以使用以下方法计算一个日期之后的时间:

var date = new Date();
date.setDate(date.getDate() + 7); // 将日期设置为一周之后的日期
转换日期格式

Date() 对象还提供了一些方法,可用于将日期格式从一种形式转换为另一种形式。

toDateString()

toDateString() 方法将日期转换为一个以美式英语格式表示的字符串。

var date = new Date();
var dateString = date.toDateString(); // 将日期转换为一个字符串,例如 "Thu Sep 30 2021"
toUTCString()

toUTCString() 方法将日期转换为一个以 GMT 格式表示的字符串。

var date = new Date();
var utcString = date.toUTCString(); // 将日期转换为一个 GMT 格式的字符串,例如 "Thu, 30 Sep 2021 13:30:00 GMT"

除了上述方法,还有很多其他方法可用于将日期转换为不同的格式,例如:

  • toLocaleDateString()
  • toISOString()
  • toTimeString()
总结

Date() 对象是 JavaScript 中处理日期和时间的主要工具之一。我们可以使用 Date() 对象对日期进行各种操作,包括获取日期、设置日期、计算日期、转换日期格式等等。无论是在编写纯 JavaScript 应用程序还是在与 Web 浏览器交互时,Date() 对象都是一种非常有用的工具。