Cách định dạng ngày trong JavaScript

Đây là một nhiệm vụ rất phổ biến: bạn định dạng ngày bằng JavaScript như thế nào?

Đưa raNgàyvật:

const date = new Date('July 22, 2018 07:22:13')

có rất nhiều phương thức sẽ tạo ra một chuỗi đại diện cho ngày đó.

Có một vài cái được tích hợp sẵn. Tôi liệt kê tất cả chúng, cùng với nhận xét hiển thị đầu ra mẫu:

date.toString()
// "Sun Jul 22 2018 07:22:13 GMT+0200 (Central European Summer Time)"
date.toTimeString() //"07:22:13 GMT+0200 (Central European Summer Time)"
date.toUTCString() //"Sun, 22 Jul 2018 05:22:13 GMT"
date.toDateString() //"Sun Jul 22 2018"
date.toISOString() //"2018-07-22T05:22:13.000Z" (ISO 8601 format)
date.toLocaleString() //"22/07/2018, 07:22:13"
date.toLocaleTimeString()	//"07:22:13"

Tất nhiên, bạn không bị giới hạn bởi những điều đó - bạn có thể sử dụng nhiều phương pháp cấp thấp hơn để nhận giá trị không còn tồn tại và xây dựng bất kỳ loại kết quả nào bạn muốn:

date.getDate() //22
date.getDay() //0 (0 means sunday, 1 means monday..)
date.getFullYear() //2018
date.getMonth() //6 (starts from 0)
date.getHours() //7
date.getMinutes() //22
date.getSeconds() //13
date.getMilliseconds() //0 (not specified)
date.getTime() //1532236933000
date.getTimezoneOffset() //-120 (will vary depending on where you are and when you check - this is CET during the summer). Returns the timezone difference expressed in minutes

Tất cả những điều đó phụ thuộc vào múi giờ hiện tại của máy tính. Có các phiên bản UTC tương đương của các phương pháp này, trả về giá trị UTC thay vì các giá trị được điều chỉnh cho phù hợp với múi giờ hiện tại của bạn:

date.getUTCDate() //22
date.getUTCDay() //0 (0 means sunday, 1 means monday..)
date.getUTCFullYear() //2018
date.getUTCMonth() //6 (starts from 0)
date.getUTCHours() //5 (not 7 like above)
date.getUTCMinutes() //22
date.getUTCSeconds() //13
date.getUTCMilliseconds() //0 (not specified)

Tải xuống miễn phí của tôiSổ tay dành cho Người mới bắt đầu JavaScript


Các hướng dẫn js khác: