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

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

Chức năng của Phương thức Date setUTCDate() trong JavaScript

Phương thức Date setUTCDate() trong JavaScript dùng để đổi ngày của một đối tượng thời gian Date thành múi giờ quốc tế (UTC), để chuyển đổi thời gian theo ngày có múi giờ quốc tế cần kết hợp với hàm toUTCString().

Cú pháp của Phương thức Date setUTCDate() trong JavaScript

doituongdate.setUTCDate(giatringay);

doituongdate: Là một biến trả về từ đối tượng new Date();

giatringay: Chuyển qua múi giờ quốc tế đồng thời cũng theo giá trị của ngày chỉ định.

Code Phương thức Date setUTCDate() trong JavaScript

<script>
// Lấy thời gian của đối tượng Date theo ngày (UTC)
document.write("<b>//Lấy thời gian của đối tượng Date theo ngày (UTC)</b><br>");
var thoigian  = new Date("September 05, 2025 01:15:00"); 
thoigian.setUTCDate(20);
document.write("Lấy thời gian của đối tượng Date theo ngày (UTC): "+thoigian.toUTCString()+"<br>"); // Kết quả: Sat, 20 Sep 2025 18:15:00 GMT
// Lấy thời gian của đối tượng Date theo ngày (UTC)
document.write("<b>//Lấy thời gian của đối tượng Date theo ngày (UTC)</b><br>");
var thoigianhai  = new Date("September 05, 2025 08:15:00"); 
thoigianhai.setUTCDate(20);
document.write("Lấy thời gian của đối tượng Date theo ngày (UTC): "+thoigianhai.toUTCString()+"<br>"); // Kết quả: Sat, 20 Sep 2025 01:15:00 GMT
</script>

Kết quả:

//Lấy thời gian của đối tượng Date theo ngày (UTC)
Lấy thời gian của đối tượng Date theo ngày (UTC): Sat, 20 Sep 2025 18:15:00 GMT
//Lấy thời gian của đối tượng Date theo ngày (UTC)
Lấy thời gian của đối tượng Date theo ngày (UTC): Sat, 20 Sep 2025 01:15:00 GMT

Chạy Thử

Ứng dụng setUTCDate() trong xử lý ngày tháng thực tế

Thay đổi ngày và tự động chuyển sang tháng khác

setUTCDate() không bắt buộc giá trị ngày phải nằm trong khoảng từ 1 đến 31. Khi truyền một giá trị vượt quá số ngày của tháng hiện tại, JavaScript sẽ tự tính sang tháng kế tiếp. Tương tự, giá trị nhỏ hơn 1 sẽ đưa ngày về tháng trước.

Cơ chế này hữu ích khi cần cộng hoặc trừ ngày mà không muốn tự tính số ngày của từng tháng. Ví dụ, từ ngày 28/02, tăng thêm vài ngày có thể làm kết quả chuyển sang tháng 3 mà không cần kiểm tra tháng đó có 28, 29, 30 hay 31 ngày.

const date = new Date("2026-02-28T10:00:00Z");

date.setUTCDate(date.getUTCDate() + 3);

console.log(date.toISOString());

Trong trường hợp này, ngày được cộng thêm 3 đơn vị và kết quả sẽ tự chuyển sang tháng tiếp theo. Điểm quan trọng là setUTCDate() tính theo ngày UTC, vì vậy kết quả không phụ thuộc trực tiếp vào múi giờ địa phương của máy chạy mã.

Điều chỉnh ngày trước hoặc sau một mốc thời gian

Một cách sử dụng thực tế khác là lấy một ngày làm mốc rồi thay đổi số ngày tương đối so với mốc đó. Có thể dùng cách này để xác định ngày hết hạn, ngày nhắc việc hoặc khoảng thời gian trước và sau một sự kiện.

const deadline = new Date("2026-08-20T09:00:00Z");

deadline.setUTCDate(deadline.getUTCDate() - 7);

console.log(deadline.toISOString());

Đoạn mã trên đưa mốc thời gian lùi lại 7 ngày. Khi muốn tính ngày trong tương lai, chỉ cần cộng số ngày thay vì trừ. Cách làm này rõ ràng hơn việc tự xử lý tháng, năm và số ngày tối đa của từng tháng.

Nếu cần giữ nguyên đối tượng ngày ban đầu để sử dụng cho mục đích khác, nên tạo một bản sao trước khi gọi phương thức. Bởi setUTCDate() thay đổi trực tiếp đối tượng Date hiện tại.

Kiểm tra kết quả sau khi thay đổi ngày bằng setUTCDate()

Sau khi điều chỉnh, nên đọc lại giá trị ngày hoặc chuyển toàn bộ thời gian sang chuỗi ISO để kiểm tra kết quả. Điều này đặc biệt hữu ích khi phép thay đổi làm phát sinh chuyển tháng hoặc chuyển năm.

const date = new Date("2026-12-30T12:00:00Z");

date.setUTCDate(date.getUTCDate() + 3);

console.log(date.getUTCDate());
console.log(date.toISOString());

Việc kiểm tra bằng getUTCDate() giúp xác nhận ngày mới, còn toISOString() cho thấy đầy đủ ngày, giờ và múi giờ UTC. Khi xử lý dữ liệu ngày tháng trong hệ thống, nên kiểm tra kết quả ở những trường hợp nằm gần cuối tháng hoặc cuối năm để tránh hiểu sai do cơ chế tự điều chỉnh của JavaScript.

Lời kết

Cảm ơn các bạn đã tham khảo bài viết Phương thức Date setUTCDate() trong JavaScript.

  • ★★★★★ ★★★★★
  • 0 Bình luận
CEO Bùi Tấn Lực | Founder Web Mới
Bùi Tấn Lực
Tìm hiểu về CEO Bùi Tấn Lực, Founder Web Mới với nhiều năm kinh nghiệm trong lĩnh vực phát triển website, SEO và chia sẻ kiến thức công nghệ
Đánh giá
Chia sẻ nội dung đánh giá của bạn về Phương thức Date setUTCDate() trong JavaScript
Email, Điện thoại của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *
Đánh giá của bạn
Tên *
Email
Số điện thoại *
Bình luận, Hỏi đáp
Yêu Cầu Báo Giá
Gửi trang web mẫu cần làm theo, chúng tôi sẽ báo giá đến bạn từ Email (tanlucit09@gmail.com - Bùi Tấn Lực) hoặc Zalo (Lực IT - 0398259259) !