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

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

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

Phương thức Date toISOString() trong JavaScript dùng để lấy chuỗi thời gian ISO từ đối tượng Date và so sánh các chuỗi đó với nhau, chuỗi ISO-8601 có định dạng YYYY-MM-DDTHH:mm:ss.sssZ và lấy múi giờ quốc tế.

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

doituongdate.toISOString();

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

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

<script>
// Lấy chuỗi ISO từ đối tượng Date
document.write("<b>// Lấy chuỗi ISO từ đối tượng Date</b><br>");
var thoigianmot  = new Date("September 02, 2025 09:25:30"); // Ngày 2/9/2025 9h 25 phút 30 giây
var chuotisomot = thoigianmot.toISOString(); // Lấy chuỗi ISO từ đối tượng Date
document.write("Lấy chuỗi ISO từ đối tượng Date: "+chuotisomot+"<br>"); // Kết quả: 2025-09-02T02:25:30.000Z
// Lấy chuỗi ISO từ đối tượng Date
document.write("<b>// Lấy chuỗi ISO từ đối tượng Date</b><br>");
var thoigianhai  = new Date("September 03, 2025 09:25:30"); // Ngày 3/9/2025 9h 25 phút 30 giây
var chuotisohai = thoigianhai.toISOString(); // Lấy chuỗi ISO từ đối tượng Date
document.write("Lấy chuỗi ISO từ đối tượng Date: "+chuotisohai+"<br>"); // Kết quả: 2025-09-03T02:25:30.000Z
// So sánh 2 chuỗi ISO
document.write("<b>// So sánh 2 chuỗi ISO</b><br>");
if(thoigianhai>thoigianmot){
document.write("Ngày 3/9/2025 đứng sau ngày 2/9/2025");
}
</script>

Kết quả:

// Lấy chuỗi ISO từ đối tượng Date
Lấy chuỗi ISO từ đối tượng Date: 2025-09-02T02:25:30.000Z
// Lấy chuỗi ISO từ đối tượng Date
Lấy chuỗi ISO từ đối tượng Date: 2025-09-03T02:25:30.000Z
// So sánh 2 chuỗi ISO
Ngày 3/9/2025 đứng sau ngày 2/9/2025

Chạy Thử

Những điều cần lưu ý khi sử dụng Date toISOString() trong JavaScript

Phương thức toISOString() rất tiện khi cần đưa đối tượng Date về một chuỗi thời gian thống nhất. Tuy nhiên, kết quả trả về không sử dụng múi giờ địa phương mà được biểu diễn theo UTC. Đây là điểm cần hiểu rõ để tránh sai lệch thời gian khi lưu dữ liệu, gửi API hoặc hiển thị ngày giờ.

Date toISOString() luôn trả về thời gian UTC

Khi gọi toISOString(), JavaScript chuyển thời điểm trong đối tượng Date sang định dạng ISO 8601 và biểu diễn theo múi giờ UTC. Ký tự Z ở cuối chuỗi cho biết thời gian đang được biểu diễn theo UTC.

Ví dụ, nếu môi trường đang sử dụng múi giờ UTC+7, thời gian địa phương có thể được chuyển thành thời gian UTC thấp hơn 7 giờ:

const date = new Date("2026-08-17T15:30:00+07:00");

console.log(date.toISOString());
// 2026-08-17T08:30:00.000Z

Điều này không có nghĩa thời điểm đã bị thay đổi. Cùng một thời điểm được thể hiện dưới một múi giờ khác. Vì vậy, không nên lấy chuỗi kết quả rồi coi trực tiếp đó là giờ địa phương.

Vì sao kết quả toISOString() có thể khác giờ địa phương?

Đối tượng Date trong JavaScript lưu trữ một thời điểm cụ thể, còn cách hiển thị thời điểm đó có thể phụ thuộc vào múi giờ. Trong khi các phương thức hiển thị theo giờ địa phương có thể cho kết quả theo múi giờ của môi trường, toISOString() luôn chuẩn hóa về UTC.

Chẳng hạn, cùng một thời điểm có thể được biểu diễn như sau:

const date = new Date("2026-08-17T15:30:00+07:00");

console.log(date.toISOString());
// 2026-08-17T08:30:00.000Z

console.log(date.toString());
// Hiển thị theo múi giờ địa phương của môi trường chạy JavaScript

Vì vậy, khi thấy giờ trong chuỗi ISO thấp hơn giờ đang nhìn thấy trên máy, cần kiểm tra múi giờ trước khi kết luận rằng JavaScript xử lý sai. Hai giá trị có thể vẫn chỉ cùng một thời điểm.

Khi nào nên sử dụng Date toISOString() trong thực tế?

toISOString() phù hợp khi cần một cách biểu diễn thời gian nhất quán giữa các hệ thống. Đây là lựa chọn hữu ích khi lưu thời gian vào cơ sở dữ liệu, truyền dữ liệu qua API hoặc ghi lại thời điểm phát sinh của một sự kiện.

Ví dụ, ứng dụng có thể tạo dấu thời gian trước khi gửi dữ liệu lên máy chủ:

const data = {
    createdAt: new Date().toISOString()
};

console.log(data);

Việc chuẩn hóa thời gian về UTC giúp hạn chế nhầm lẫn khi máy khách và máy chủ nằm ở các múi giờ khác nhau. Khi cần hiển thị cho người dùng, ứng dụng có thể chuyển thời điểm này sang múi giờ phù hợp ở bước hiển thị thay vì thay đổi dữ liệu gốc.

Đặc biệt, nên ưu tiên cách làm này khi dữ liệu thời gian được trao đổi giữa nhiều hệ thống. Một chuỗi ISO theo UTC giúp bên nhận dễ xác định chính xác thời điểm xảy ra sự kiện mà không phải đoán múi giờ của bên gửi.

Lời kết

Cảm ơn các bạn đã tham khảo bài viết Phương thức Date toISOString() 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 toISOString() 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) !