JavaScript Date Formats là một cách để biểu diễn ngày tháng và thời gian trong JavaScript. Có nhiều định dạng ngày tháng khác nhau có sẵn trong JavaScript, mỗi định dạng có các mục đích sử dụng khác nhau.
Các định dạng ngày tháng cơ bản trong JavaScript
JavaScript cung cấp bốn định dạng ngày tháng cơ bản:
- Short date: Định dạng ngày ngắn, chẳng hạn như “07/12/2023”.
- Long date: Định dạng ngày dài, chẳng hạn như “Thursday, December 7, 2023”.
- Full date: Định dạng ngày đầy đủ, chẳng hạn như “Thursday, December 7, 2023, at 09:00:00 AM”.
- ISO date: Định dạng ngày ISO, chẳng hạn như “2023-12-07”.
Định dạng ngày tháng bằng phương thức toLocaleDateString()
Phương thức toLocaleDateString() trả về một chuỗi ngày tháng theo định dạng được xác định bởi ngôn ngữ và khu vực hiện tại của trình duyệt.
Ví dụ:
const today = new Date();
// Định dạng ngày ngắn
const shortDate = today.toLocaleDateString();
console.log(shortDate); // "07/12/2023"
// Định dạng ngày dài
const longDate = today.toLocaleDateString("long");
console.log(longDate); // "Thursday, December 7, 2023"
// Định dạng ngày đầy đủ
const fullDate = today.toLocaleDateString("full");
console.log(fullDate); // "Thursday, December 7, 2023, at 09:00:00 AM"
// Định dạng ngày ISO
const isoDate = today.toLocaleDateString("iso");
console.log(isoDate); // "2023-12-07"
Định dạng ngày tháng bằng phương thức DateTimeFormat()
Phương thức DateTimeFormat() cho phép bạn định dạng ngày tháng theo định dạng tùy chỉnh.
Ví dụ:
const today = new Date();
// Định dạng ngày ngắn
const shortDate = today.toLocaleDateString("d/M/yyyy");
console.log(shortDate); // "07/12/2023"
// Định dạng ngày dài
const longDate = today.toLocaleDateString("EEEE, MMMM d, yyyy");
console.log(longDate); // "Thursday, December 7, 2023"
// Định dạng ngày đầy đủ
const fullDate = today.toLocaleDateString("EEEE, MMMM d, yyyy, at h:mm:ss a");
console.log(fullDate); // "Thursday, December 7, 2023, at 09:00:00 AM"
// Định dạng ngày ISO
const isoDate = today.toLocaleDateString("yyyy-MM-dd");
console.log(isoDate); // "2023-12-07"
Định dạng ngày tháng bằng các thư viện bên thứ ba
Ngoài các định dạng ngày tháng được cung cấp bởi JavaScript, còn có nhiều thư viện bên thứ ba cung cấp các định dạng ngày tháng nâng cao hơn.
Một số thư viện bên thứ ba phổ biến bao gồm:
- moment.js: Thư viện này cung cấp nhiều định dạng ngày tháng khác nhau, bao gồm cả định dạng ngày tháng theo ngôn ngữ và khu vực cụ thể.
- date-fns: Thư viện này cung cấp nhiều hàm xử lý ngày tháng, bao gồm cả các hàm định dạng ngày tháng.
- luxon: Thư viện này cung cấp các định dạng ngày tháng và thời gian nâng cao, bao gồm cả định dạng ngày tháng theo tiêu chuẩn ISO 8601.
Chuyển đổi chuỗi ngày tháng thành milliseconds sử dụng hàm Date.parse.
Hàm Date.parse()
có thể được sử dụng để chuyển đổi chuỗi ngày tháng hợp lệ thành số mili giây kể từ 01/01/1970. Số mili giây này có thể được sử dụng để tạo đối tượng ngày Date
mới:
let msec = Date.parse("March 21, 2012"); // 1332262400000
const d = new Date(msec); // 21/03/2012
Hàm Date.parse()
có thể chấp nhận nhiều định dạng ngày tháng khác nhau, bao gồm cả định dạng ISO, định dạng ngắn và định dạng dài.
Ví dụ.
// Định dạng ISO
const d = new Date("2023-12-07"); // 07/12/2023
// Định dạng ngắn
const d = new Date("03/25/2023"); // 25/03/2023
// Định dạng dài
const d = new Date("Mar 25 2023"); // 25/03/2023
// Chuyển đổi chuỗi ngày tháng thành milliseconds
let msec = Date.parse("March 21, 2012"); // 1332262400000
const d = new Date(msec); // 21/03/2012
Tổng kết
JavaScript Date Formats là một cách linh hoạt để biểu diễn ngày tháng và thời gian trong JavaScript. Có nhiều định dạng ngày tháng khác nhau có sẵn, mỗi định dạng có các mục đích sử dụng khác nhau.