Bạn được Daimman mời tham gia diễn đàn viết bài kiếm tiền VNO, bấm vào đây để đăng ký.
1 người đang xem
Bài viết: 86 Tìm chủ đề
730 36
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!
 

Những người đang xem chủ đề này

Back