Trong JS cung cấp sẵn cho chúng ta một đối tượng là Intl để so sánh chuỗi theo ngôn ngữ, định dạng số và ngày tháng.
Ở đây mình chỉ nói đến Format ngày tháng và mình lấy thời gian hiện tại. Mọi người có thể F12 lên để thử cho nhanh.
Const now = new Date () ;
Mã:
let intl = new Intl.DateTimeFormat("vi-VN", {
dateStyle: "full"
});
const date = intl.format(now);
console.log(date);
Đầu tiên là 'dateStyle', định dạng cơ bản.
Mã:
dateStyle?: "full" | "long" | "medium" | "short" | undefined;
"full": Thứ Năm, 12 tháng 1, 2023
"long": 12 tháng 1, 2023
"medium": 12 thg 1, 2023
"short": 12/01/2023
Tiếp theo là về chi tiết cho từng thuộc tính về: ngày trong tuần, ngày, tháng, năm, trước(sau công nguyên), giờ, phút, giây.
Mã:
const now = new Date();
let intl = new Intl.DateTimeFormat("vi-VN", {
weekday: "narrow",
hour: "2-digit",
minute: "2-digit",
second: "2-digit",
day: "2-digit",
month: "2-digit",
year: "numeric",
era: "short",
});
const date = intl.format(now);
console.log(date);
Hầu hết cá thuộc tính đều có 2 giá trị truyền vào là: "Numeric"
"2-digit" và mình thấy là hình như nó chả khác gì nhau chỉ là "numeric" thì là "1" còn "2-digit" thì là "01", và không truyền vào thì không hiển thị.
Các thuộc tính khác biệt:
Mã:
Weekday? : "Long" |"Short"|"Narrow" : "Thứ Năm"|"Th 5"|"T5"
Mã:
Month? : "Numeric"|"2-digit"|"Long"|"Short"|"Narrow" : "1"|"01"|"Tháng 1"|"Thg 1"|"1"
Mã:
Era? : "Long"|"Short"|"Narrow" : "Sau Công Nguyên"|"Sau CN"|"Sau CN"
Ngoài ra còn có
Mã:
Hour12? : "True"|"False"
Là đáng chú ý, nó ở định dạng giờ là 24h hay 12h thôi.
Chúc các bạn thành công!
Ở đây mình chỉ nói đến Format ngày tháng và mình lấy thời gian hiện tại. Mọi người có thể F12 lên để thử cho nhanh.
Const now = new Date () ;
Mã:
let intl = new Intl.DateTimeFormat("vi-VN", {
dateStyle: "full"
});
const date = intl.format(now);
console.log(date);
Đầu tiên là 'dateStyle', định dạng cơ bản.
Mã:
dateStyle?: "full" | "long" | "medium" | "short" | undefined;
"full": Thứ Năm, 12 tháng 1, 2023
"long": 12 tháng 1, 2023
"medium": 12 thg 1, 2023
"short": 12/01/2023
Tiếp theo là về chi tiết cho từng thuộc tính về: ngày trong tuần, ngày, tháng, năm, trước(sau công nguyên), giờ, phút, giây.
Mã:
const now = new Date();
let intl = new Intl.DateTimeFormat("vi-VN", {
weekday: "narrow",
hour: "2-digit",
minute: "2-digit",
second: "2-digit",
day: "2-digit",
month: "2-digit",
year: "numeric",
era: "short",
});
const date = intl.format(now);
console.log(date);
Hầu hết cá thuộc tính đều có 2 giá trị truyền vào là: "Numeric"
"2-digit" và mình thấy là hình như nó chả khác gì nhau chỉ là "numeric" thì là "1" còn "2-digit" thì là "01", và không truyền vào thì không hiển thị.
Các thuộc tính khác biệt:
Mã:
Weekday? : "Long" |"Short"|"Narrow" : "Thứ Năm"|"Th 5"|"T5"
Mã:
Month? : "Numeric"|"2-digit"|"Long"|"Short"|"Narrow" : "1"|"01"|"Tháng 1"|"Thg 1"|"1"
Mã:
Era? : "Long"|"Short"|"Narrow" : "Sau Công Nguyên"|"Sau CN"|"Sau CN"
Ngoài ra còn có
Mã:
Hour12? : "True"|"False"
Là đáng chú ý, nó ở định dạng giờ là 24h hay 12h thôi.
Chúc các bạn thành công!