Định dạng ngày tháng trong JavaScript - Fedu

CHÀO MỪNG BẠN ĐẾN VỚI THƯ VIỆN HỌC TẬP & ĐÀO TẠO CƠ BẢN

Định dạng ngày tháng trong JavaScript

JavaScript

Hướng dẫn JavaScript

Biểu mẫu JavaScript

Đối tượng JavaScript

Hàm JavaScript

DOM JavaScript

Trình duyệt BOM

JavaScript Ajax

JavaScript Json

Nhập vào ngày trong JavaScript

Có 4 kiểu định dạng ngày nhập JavaScript phổ biến:

Loại Ví dụ
ISO Date “2015-03-25” (The International Standard)
Short Date “03/25/2015”
Long Date “Mar 25 2015” or “25 Mar 2015”
Full Date “Wednesday March 25 2015”

Định dạng ISO theo một tiêu chuẩn chặt chẽ trong JavaScript. Các định dạng khác không được xác định rõ ràng và có thể là trình duyệt cụ thể.

Hiển thị ngày trong Javacript

Định dạng đầu vào độc lập, JavaScript (theo mặc định) sẽ xuất các ngày tháng ở định dạng chuỗi văn bản đầy đủ:

Wed Mar 25 2015 07:00:00 GMT+0700 (SE Asia Standard Time)

ISO Date trong JavaScript

ISO 8601 là tiêu chuẩn quốc tế để biểu diễn ngày và giờ. Cú pháp ISO 8601 (YYYY-MM-DD) cũng là định dạng ngày tháng ưa thích của JavaScript:

var d = new Date(“2015-03-25”);

Ngày được tính sẽ liên quan đến múi giờ của bạn. Tùy thuộc vào múi giờ của bạn, kết quả trên sẽ thay đổi từ ngày 24 tháng 3 đến ngày 25 tháng 3.

ISO Dates (Year và Month)

ISO Dates có thể được viết mà không chỉ rõ ngày (YYYY-MM):

var d = new Date(“2015-03”);

Múi giờ sẽ thay đổi kết quả từ ngày 28 tháng 2 đến ngày 01 tháng 3.

ISO Dates (chỉ có Year)

ISO Dates có thể được viết mà không có tháng và ngày (YYYY):

var d = new Date(“2015”);

Múi giờ sẽ thay đổi kết quả trên giữa ngày 31 tháng 12 năm 2014 và ngày 01 tháng 1 năm 2015.

ISO Dates (Date-Time)

ISO Dates có thể được viết bằng giờ, phút và giây được thêm vào (YYYY-MM-DDTHH: MM: SSZ):

var d = new Date(“2015-03-25T12:00:00Z”);

Ngày và giờ được tách ra với thành phố T. UTC time được định nghĩa bằng một chữ cái hoa Z. Nếu bạn muốn sửa đổi thời gian liên quan đến UTC, loại bỏ các Z và thêm + HH: MM hoặc -HH: MM thay vì:

var d = new Date(“2015-03-25T12:00:00-06:30”);

UTC (Universal Time Coordinated) cũng giống như GMT (Greenwich Mean Time). Việc bỏ qua T hoặc Z trong một chuỗi thời gian có thể cho kết quả khác nhau trong trình duyệt khác nhau.

Time Zones

Khi thiết lập ngày, không xác định múi giờ, JavaScript sẽ sử dụng múi giờ của trình duyệt. Khi nhận được ngày tháng, không xác định múi giờ, kết quả sẽ được chuyển đổi thành múi giờ của trình duyệt.

Nói cách khác: nếu một ngày / thời gian được tạo ra theo giờ GMT (Greenwich Mean Time), ngày / thời gian sẽ được chuyển đổi sang CDT (Giờ ban ngày của Trung Mỹ) nếu người dùng duyệt từ trung tâm Hoa Kỳ.

Short Dates trong JavaScript

Short Dates được viết với cú pháp “MM / DD / YYYY” như sau:

var d = new Date(“03/25/2015”);

Lưu ý:

Trong một số trình duyệt, tháng hoặc ngày không có số không ở đầu có thể dẫn đến lỗi:

var d = new Date(“2015-3-25”);

“YYYY / MM / DD” chưa được xác định. Một số trình duyệt sẽ cố gắng phán đoán định dạng. Một số sẽ trả về giá trị NaN.

var d = new Date(“2015/03/25”);

“DD-MM-YYYY” cũng không xác định. Một số trình duyệt sẽ cố gắng phán đoán định dạng. Một số sẽ trả về giá trị NaN.

var d = new Date(“25-03-2015”);

Long Dates trong JavaScript

Long Dates thường được viết với cú pháp “MMM DD YYYY” như sau:

var d = new Date(“Mar 25 2015”);

Tháng và ngày có thể theo bất kỳ thứ tự nào:

var d = new Date(“25 Mar 2015”);

Và, tháng có thể được viết đầy đủ (Tháng Giêng), hoặc viết tắt (Jan):

var d = new Date(“January 25 2015”);

hay

var d = new Date(“Jan 25 2015”);

Không phân biện chữ hoa chữ thường:

var d = new Date(“JANUARY, 25, 2015”);

Full Date trong JavaScript

JavaScript sẽ chấp nhận các chuỗi ngày trong “full JavaScript format”:

var d = new Date(“Wed Mar 25 2015 09:56:24 GMT+0100 (W. Europe Standard Time)”);

JavaScript sẽ bỏ qua lỗi cả trong tên ngày và trong dấu ngoặc thời gian:

var d = new Date(“Fri Mar 25 2015 09:56:24 GMT+0100 (Tokyo Time)”);