Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Phương thức Date.setUTCFullYear() trong JavaScript

Phương thức setUTCFullYear() thiết lập năm (4 chữ số) cho đối tượng Date theo thời gian UTC, có thể kèm tháng và ngày. Trả về timestamp mới.

Cú pháp

dateObj.setUTCFullYear(year[, monthIndex[, day]])
  • year: Năm (ví dụ: 2024). 0-99 -> 1900-1999
  • monthIndex: Tùy chọn, tháng 0-based (0-11)
  • day: Tùy chọn, ngày trong tháng (1-31)
  • Trả về: Timestamp mới (number)

Ví dụ cơ bản

const date = new Date('1989-09-26T12:04:25.096Z');
console.log("Trước:", date.toUTCString()); // Tue, 26 Sep 1989 12:04:25 GMT

date.setUTCFullYear(2018);
console.log("Sau:", date.toUTCString());  // Wed, 26 Sep 2018 12:04:25 GMT

Set năm + tháng + ngày UTC

const date = new Date('1989-09-26T12:04:25.096Z');
date.setUTCFullYear(2024, 11, 25); // 25/12/2024
console.log(date.toUTCString()); // Wed, 25 Dec 2024 12:04:25 GMT

Chỉ set năm, tự adjust ngày 29/2

const date = new Date('2024-02-29T00:00:00Z'); // Năm nhuận
date.setUTCFullYear(2023); // 2023 không nhuận
console.log(date.toISOString()); // 2023-02-28T00:00:00.000Z (tự adjust 29->28)

Thiếu tháng/năm khi tạo Date

const date = new Date('23, August'); // 23/8/năm nay
date.setUTCFullYear(2018);
console.log(date.toDateString()); // Thu Aug 23 2018

Ngày hiện tại set năm UTC

const date = new Date();
date.setUTCFullYear(2025);
console.log(date.toUTCString()); // Giữ tháng/ngày/giờ hiện tại, đổi năm

Lưu ý

  • Tháng 0-based (0-11)
  • Năm 0-99 -> 1900-1999
  • Tự động normalize: 31/4 -> 1/5, 29/2 năm không nhuận -> 28/2
  • Làm thay đổi object Date gốc
  • Khác với setFullYear() (local time)
  • Cặp đôi với getUTCFullYear()