Nhận ngày và giờ hiện tại trong UTC bằng JavaScript #
Sử dụng phương thức toUTCString() để có được ngày và thời gian hiện tại trong UTC, ví dụ: new Date().toUTCString(). Phương thức toUTCString chuyển đổi một ngày thành một chuỗi bằng múi giờ UTC.
Copied!
const utcStr = new Date().toUTCString(); console.log(utcStr); // 👉️ "Sat, 15 Jan 2022 16:17:30 GMT" const isoStr = new Date().toISOString(); console.log(isoStr); // 👉️ "2022-01-15T16:17:30.814Z"Phương thức ToutCString trả về một chuỗi đại diện cho ngày sử dụng múi giờ UTC.
Bạn cũng có thể sử dụng phương thức toISOString() để có được một chuỗi ở định dạng ISO 8601 là YYYY-MM-DDTHH:mm:ss.sssZ.
Z ở cuối định dạng có nghĩa là UTC, nghĩa là, một phần bù từ UTC bằng 0 giờ, phút và giây.
Copied!
const isoStr = new Date().toISOString(); console.log(isoStr); // 👉️ "2022-01-15T16:17:30.814Z"Phương thức
Copied!
const isoStr = new Date().toISOString(); console.log(isoStr); // 👉️ "2022-01-15T16:17:30.814Z" 0 trả về một chuỗi đại diện cho ngày ở định dạng ISO 8601, theo thời gian phổ quát.Các chuỗi được định dạng ISO 8601 thường được sử dụng để lưu trữ ngày và giờ trên máy chủ.
Bạn cũng có thể sử dụng các phương thức
Copied!
const isoStr = new Date().toISOString(); console.log(isoStr); // 👉️ "2022-01-15T16:17:30.814Z" 1 có sẵn để trả về các thành phần ngày và giờ theo thời gian phổ quát.Chúng khá hữu ích và cho phép chúng tôi định dạng ngày và thời gian theo nhiều cách khác nhau, sử dụng kết nối chuỗi.
Copied!
const date = new Date(); // 👉️ "Sat Jan 15 2022 18:23:51 GMT+0200" console.log(date); // 👇️ returns UTC year of the date console.log(date.getUTCFullYear()); // 👉️ 2022 // 👇️ returns UTC month (0-11) // 0 is January, 11 is December console.log(date.getUTCMonth()); // 👉️ 0 // 👇️ returns UTC day of the month (1-31) console.log(date.getUTCDate()); // 👉️ 15 // 👇️ returns UTC Hour of the date console.log(date.getUTCHours()); // 👉️ 16 // 👇️ returns UTC Minutes of the date console.log(date.getUTCMinutes()); // 👉️ 23 // 👇️ returns UTC Seconds of the date console.log(date.getUTCSeconds()); // 👉️ 51Tất cả các phương thức
Copied!
const isoStr = new Date().toISOString(); console.log(isoStr); // 👉️ "2022-01-15T16:17:30.814Z" 1 trả về thành phần ngày hoặc thời gian theo thời gian phổ quát.Bạn có thể sử dụng các giá trị này để định dạng ngày UTC theo cách phù hợp với trường hợp sử dụng của bạn.
Lưu ý rằng phương thức Getutcmonth trả về tháng của ngày được chỉ định dưới dạng giá trị dựa trên 0 (0 = tháng 1, 1 = tháng 2, v.v.)
Dưới đây là một ví dụ sử dụng các phương thức
Copied!
const isoStr = new Date().toISOString(); console.log(isoStr); // 👉️ "2022-01-15T16:17:30.814Z" 1 để định dạng ACopied!
const isoStr = new Date().toISOString(); console.log(isoStr); // 👉️ "2022-01-15T16:17:30.814Z" 4 làCopied!
const isoStr = new Date().toISOString(); console.log(isoStr); // 👉️ "2022-01-15T16:17:30.814Z" 5.Copied!
function padTo2Digits(num) { return num.toString().padStart(2, '0'); } function formatDate(date) { return ( [ date.getFullYear(), padTo2Digits(date.getUTCMonth() + 1), padTo2Digits(date.getUTCDate()), ].join('-') + ' ' + [ padTo2Digits(date.getUTCHours()), padTo2Digits(date.getUTCMinutes()), padTo2Digits(date.getUTCSeconds()), ].join(':') ); } // 👇️ "2022-01-15 16:25:12" console.log(formatDate(new Date()));Chúng tôi đã tạo một hàm có thể tái sử dụng định dạng ngày và giờ là
Copied!
const isoStr = new Date().toISOString(); console.log(isoStr); // 👉️ "2022-01-15T16:17:30.814Z" 5 bằng tiêu chuẩn thời gian UTC.Bạn có thể sắp xếp lại các thành phần ngày, thay đổi dấu phân cách thành dấu gạch chéo phía trước Copied!
Có một tương đương không tương đương cho mỗi phương pháp này, ví dụ như getutclyear so với getlyear.
Các phương thức
Copied!
const isoStr = new Date().toISOString(); console.log(isoStr); // 👉️ "2022-01-15T16:17:30.814Z" 1 trả về thành phần ngày hoặc thời gian theo thời gian phổ quát, trong khi các phương thứcCopied!
const isoStr = new Date().toISOString(); console.log(isoStr); // 👉️ "2022-01-15T16:17:30.814Z" 9 trả về chúng theo thời gian địa phương (múi giờ mà máy tính của khách truy cập đang ở).Các phương thức
Copied!
const isoStr = new Date().toISOString(); console.log(isoStr); // 👉️ "2022-01-15T16:17:30.814Z" 9 trả về các kết quả khác nhau tùy thuộc vào nơi người dùng truy cập trang web của bạn.Ví dụ: nếu bạn lưu trữ một thời gian địa phương vào nửa đêm (00:00) trong cơ sở dữ liệu của bạn, bạn sẽ không biết đó có phải là nửa đêm ở Tokyo (Nhật Bản), ở Paris (Pháp), ở New York (Hoa Kỳ), v.v. là tất cả những khoảnh khắc khác nhau cách nhau hàng giờ.
Để thống nhất, bạn chủ yếu nên sử dụng thời gian địa phương khi bạn phải kết xuất ngày và giờ cho người dùng, nhưng lưu trữ các giá trị thực tế trong UTC.