JavaScript 日期 set 方法

JavaScript 日期对象提供了一些方法可用于设置日期的值,比如:年、月、日、小时、分钟、秒、毫秒等。

JavaScript 日期对象提供了一些方法可用于修改日期的信息,比如:年、月、日、小时、分钟、秒、毫秒等。

下列列出了日期对象关于修改日期信息的方法:

方法 说明
setFullYear() 设置年份
setMonth() 设置月份 (0-11)
setDate() 设置日 (1-31)
setHours() 设置小时 (0-23)
setMinutes() 设置分钟 (0-59)
setSeconds() 设置秒 (0-59)
setMilliseconds() 设置毫秒 (0-999)
setTime() 通过距 1970 年 1 月 1 日的毫秒数设置时间

setFullYear() 方法

setFullYear() 方法设置日期对象的年份。

下面例子修改当前时间的年份为 2020 年:

const d = new Date();
d.setFullYear(2020);

除年份参数之外,setFullYear() 方法还可以同时接受月份和日期参数:

const d = new Date();
d.setFullYear(2020, 11, 3);

setMonth() 方法

setMonth() 方法设置日期对象的月份。

JavaScript 中,1 月用 0 表示,2 月用 1 表示,以此类推,12 月用 11 表示。

下面例子修改当前时间的月份为 12 月:

const d = new Date();
d.setMonth(11);

setDate() 方法

setDate() 方法设置日期对象的日期,参数 1 - 31 依次表示 1 日到 31 日。

下面例子修改当前日期的为 15 日:

const d = new Date();
d.setDate(15);

setDate() 方法还可用于向日期添加天数

const d = new Date();
d.setDate(d.getDate() + 50);

如果添加天数会改变月份或年份,则日期对象会自动处理更改。

setHours() 方法

setHours() 方法设置日期对象的小时数,参数 0 - 23 依次表示 24 小时制中的 0 点到 23 点。

下面例子修改当前日期的小时数为 22 时:

const d = new Date();
d.setHours(22);

setMinutes() 方法

setMinutes() 方法设置日期对象的分钟数,参数 0 - 59 依次表示 0 分到 59 分。

下面例子修改当前日期的分钟数为 30 分:

const d = new Date();
d.setMinutes(30);

setSeconds() 方法

setSeconds() 方法设置日期对象的秒数,参数 0 - 59 依次表示 0 秒到 59 秒。

下面例子修改当前日期的秒数为 30 秒:

const d = new Date();
d.setSeconds(30);

比较日期

日期可以直接比较运算符(>, >=, <, <=, ==, ===)进行比较。

以下示例将今天的日期与 2100 年 1 月 14 日进行比较:

let text = "";
const today = new Date();
const someday = new Date();
someday.setFullYear(2100, 0, 14);

if (someday > today) {
  text = "今天早于 2100 年 1 月 14 日";
} else {
  text = "今天晚于 2100 年 1 月 14 日";
}