Cách format ngày tháng trong JavaScript không cần dùng thư viện

Thảo luận trong 'Khác' bắt đầu bởi Lô Cát Gia, 12 Tháng một 2023.

  1. Lô Cát Gia CtĐ

    Bài viết:
    86
    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!
     
  2. Đăng ký Binance
Trả lời qua Facebook
Đang tải...