Phương thức Date toLocaleDateString() trong JavaScript
Bùi Tấn Lực
- 992
- 06/09/2025
Chức năng của Phương thức Date toLocaleDateString() trong JavaScript
Phương thức Date toLocaleDateString() trong JavaScript dùng để định dạng chuỗi ngày, tháng, năm, thứ theo locale và các tùy chọn từ một đối tượng thời gian Date.
Cú pháp của Phương thức Date toLocaleDateString() trong JavaScript
Định dạng ngôn ngữ, thời gian tùy chọn theo mặc định của máy chủ
doituongdate.toLocaleDateString();
doituongdate: Là một biến trả về từ đối tượng new Date();
Định dạng ngôn ngữ, thời gian tùy chọn tự cài đặt
doituongdate.toLocaleDateString('tuychonngonngu',tuychonthoigian);
doituongdate: Là một biến trả về từ đối tượng new Date();
tuychonngonngu: Ngôn ngữ của các nước, ví dụ: vi-VN là tiếng việt, en-US là tiếng anh,..... tham khảo chi tiết ở phần dưới.
tuychonthoigian: Quy định cách hiển thị của ngày, tháng, năm, thứ trong tuần,.... tham khảo chi tiết ở phần dưới.
Các tùy chọn của Phương thức Date toLocaleDateString() trong JavaScript
year: numeric (số), 2-digit (2 chữ số).
month: numeric (số), 2-digit (2 chữ số), long (tên tháng dài), short (tên tháng ngắn).
day: numeric (số), 2-digit (2 chữ số).
weekday: long (thứ dài), short (thứ ngắn).
Code Phương thức Date toLocaleDateString() trong JavaScript
<script>
var thoigian = new Date(2025,7,30); // Ngày 30 tháng 8 năm 2025
// Định dạng mặc định theo locale của máy chủ
document.write("<b>// Định dạng mặc định theo locale của máy chủ</b><br>");
document.write("Định dạng mặc định theo locale của máy chủ: "+thoigian.toLocaleDateString()+"<br>"); // Kết quả: 30/9/2025
// Định dạng theo locale ngôn ngữ
document.write("<b>// Định dạng theo locale ngôn ngữ</b><br>");
document.write("Định dạng theo locale ngôn ngữ tiếng anh: "+thoigian.toLocaleDateString('en-US')+"<br>"); // Kết quả: 8/30/2025
document.write("Định dạng theo locale ngôn ngữ tiếng việt: "+thoigian.toLocaleDateString('vi-VN')+"<br>"); // Kết quả: 30/8/2025
// Định dạng tùy chỉnh theo tiếng anh
document.write("<b>// Định dạng tùy chỉnh theo tiếng anh</b><br>");
var tuychinhen = thoigian.toLocaleDateString('en-US', {
weekday: 'long',
year: 'numeric',
month: 'long',
day: 'numeric'
});
document.write("Định dạng tùy chỉnh theo tiếng anh: "+tuychinhen+"<br>"); // Kết quả: Saturday, August 30, 2025
// Định dạng tùy chỉnh theo tiếng việt
document.write("<b>// Định dạng tùy chỉnh theo tiếng việt</b><br>");
var tuychinhvi = thoigian.toLocaleDateString('vi-VN', {
weekday: 'long',
year: 'numeric',
month: 'long',
day: 'numeric'
});
document.write("Định dạng tùy chỉnh theo tiếng việt: "+tuychinhvi+"<br>"); // Kết quả: Thứ Bảy, 30 tháng 8, 2025
</script>
Kết quả:
// Định dạng mặc định theo locale của máy chủ
Định dạng mặc định theo locale của máy chủ: 30/8/2025
// Định dạng theo locale ngôn ngữ
Định dạng theo locale ngôn ngữ tiếng anh: 8/30/2025
Định dạng theo locale ngôn ngữ tiếng việt: 30/8/2025
// Định dạng tùy chỉnh theo tiếng anh
Định dạng tùy chỉnh theo tiếng anh: Saturday, August 30, 2025
// Định dạng tùy chỉnh theo tiếng việt
Định dạng tùy chỉnh theo tiếng việt: Thứ Bảy, 30 tháng 8, 2025
Những lưu ý khi sử dụng Date toLocaleDateString() trong JavaScript
Date toLocaleDateString() giúp hiển thị ngày tháng theo cách dễ đọc, nhưng kết quả không phải lúc nào cũng giống nhau giữa các môi trường. Khi sử dụng, cần đặc biệt chú ý đến ngôn ngữ, múi giờ và các tùy chọn định dạng để tránh hiển thị sai ngày hoặc tạo giao diện thiếu nhất quán.
Ảnh hưởng của locale đến định dạng ngày tháng
Tham số locale quyết định cách JavaScript trình bày ngày tháng theo quy ước của từng ngôn ngữ hoặc khu vực. Cùng một đối tượng Date nhưng khi thay đổi locale, thứ tự ngày, tháng, năm và cách hiển thị có thể thay đổi.
Chẳng hạn, khi hiển thị cho người dùng Việt Nam, nên chỉ định vi-VN nếu muốn kết quả phù hợp với cách viết ngày tháng quen thuộc tại Việt Nam. Với website phục vụ nhiều quốc gia, có thể lựa chọn locale dựa trên ngôn ngữ mà người dùng đang sử dụng thay vì cố định một định dạng duy nhất.
Khác biệt giữa ngày tháng và múi giờ
toLocaleDateString() định dạng giá trị ngày theo múi giờ của môi trường thực thi nếu không được chỉ định rõ. Vì vậy, cùng một thời điểm nhưng máy chủ và trình duyệt ở các múi giờ khác nhau có thể cho ra ngày hiển thị khác nhau.
Điều này đặc biệt đáng chú ý khi dữ liệu được lưu dưới dạng thời gian UTC rồi chuyển sang ngày để hiển thị. Nếu ứng dụng chỉ quan tâm đến một ngày cụ thể như ngày sinh, ngày đặt lịch hoặc ngày hết hạn, cần xác định rõ ngày đó thuộc múi giờ nào trước khi định dạng.
Khi cần kiểm soát múi giờ, có thể truyền tùy chọn timeZone để kết quả ổn định hơn thay vì phụ thuộc vào múi giờ mặc định của thiết bị.
Khi nào nên sử dụng tùy chọn định dạng?
Nếu chỉ cần hiển thị ngày theo cách mặc định của locale, không nhất thiết phải khai báo nhiều tùy chọn. Tuy nhiên, với giao diện cần thống nhất cách trình bày, nên sử dụng các tùy chọn như year, month và day để kiểm soát kết quả.
Việc lựa chọn tùy chọn nên dựa trên mục đích hiển thị. Danh sách dữ liệu có thể cần định dạng ngắn gọn, trong khi tiêu đề bài viết, lịch sự kiện hoặc thông tin giao dịch có thể cần cách trình bày đầy đủ hơn. Không nên thêm quá nhiều tùy chọn nếu chúng không mang lại giá trị cho người đọc.
Lời kết
Cảm ơn các bạn đã tham khảo bài viết Phương thức Date toLocaleDateString() trong JavaScript.
- 0 Bình luận
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 *