JavaScript Date setFullYear() 方法



setFullYear() 方法是 JavaScript 中一个内置函数,用于设置 Date 对象的“年份”组件。此方法的返回值是 Date 对象的更新时间戳,反映了通过修改年份所做的更改。或者,我们还可以修改日期对象的月份和日期值。

如果传递给此方法的任何参数为 NaN 或未定义,则日期将设置为“无效日期”,并且 Not a Number (NaN) 将作为结果返回。

语法

以下是 JavaScript Date setFullYear() 方法的语法:

setFullYear(yearValue, monthValue, dateValue);

参数

此方法接受三个参数。下面描述了相同的内容:

  • yearValue - 一个整数,表示新的年份(四位数字)。
  • monthValue (可选) - 一个介于 0 和 11 之间的整数,其中 0 表示 1 月,11 表示 12 月。
    • 如果提供 -1,则将导致前一年的最后一个月。
    • 如果提供 12,则将导致下一年的第一个月。
  • dateValue (可选) - 一个介于 1 和 31 之间的整数。
    • 如果提供 0,则将导致前一个月的最后一天。
    • 如果提供 -1,则将导致前一个月的倒数第二天。
    • 如果提供 32,则将导致下一个月的第一天(如果该月有 31 天)。
    • 如果提供 32,则将导致下一个月的第二天(如果该月有 30 天)。

返回值

setFullYear() 方法在设置年份后返回更新的日期对象的 时间戳。

示例 1

在以下示例中,我们使用 JavaScript Date setFullYear() 方法将 Date 对象的年份设置为 2023:

<html>
<body>
<script>
   const currentDate = new Date();
   currentDate.setFullYear(2023);

   document.write(currentDate);
</script>
</body>
</html>

输出

如果我们执行上述程序,年份将设置为 2023,月份和日期将根据本地时间。

示例 2

在这里,我们将年份设置为 (2023),月份设置为 10 (11 月),日期设置为 (25):

<html>
<body>
<script>
   const specificDate = new Date();
   specificDate.setFullYear(2023, 10, 25);

   document.write(specificDate);
</script>
</body>
</html>

输出

执行后,此程序返回一个具有指定日期的时间戳。

示例 3

在此示例中,我们只更改年份,同时保持现有月份 (5 月) 和日期 (15) 不变。

<html>
<body>
<script>
   const existingDate = new Date('2022-05-15');
   existingDate.setFullYear(2023);

   document.write(existingDate);
</script>
</body>
</html>

输出

它返回一个时间戳,例如“2023 年 5 月 15 日星期一 05:30:00 GMT+0530 (印度标准时间)”。

示例 4

如果我们为 monthValue 指定“12”,则年份将增加 1 (yearValue + 1),并且 0 将用于月份。

<html>
<body>
<script>
   const existingDate = new Date('2022-11-15'); //December 15 2022
   existingDate.setFullYear(2022, 12, 15); // It will be January 15 2023

   document.write(existingDate);
</script>
</body>
</html>

输出

它返回一个时间戳,例如“2023 年 1 月 15 日星期日 05:30:00 GMT+0530 (印度标准时间)”。

示例 5

如果我们为 dateValue 指定“32”,则月份将增加 1(如果该月有 31 天),并将导致下一个月的第一天。

<html>
<body>
<script>
   const existingDate = new Date('2023-10-30'); //October 2023 has 31 days.
   existingDate.setFullYear(2023, 9, 32); 

   document.write(existingDate);
</script>
</body>
</html>

输出

它返回一个时间戳,例如“2023 年 11 月 1 日星期三 05:30:00 GMT+0530 (印度标准时间)”。

示例 6

如果我们将无效的日期值作为参数传递给此函数,则日期将设置为“无效日期”,并且“NaN”将作为结果返回:

<html>
<body>
<script>
   const currentDate = new Date();
   currentDate.setFullYear("dfbgf");

   document.write(currentDate.getUTCFullYear());
</script>
</body>
</html>

输出

正如我们所看到的输出,“NaN”作为输出返回。

广告