JavaScript là ngôn ngữ lập trình nhẹ được sử dụng cho World Wide Web. Đối tượng JavaScript Date
rất hữu ích để kiểm tra ngày giờ khách truy cập vào trang web của bạn
Hướng dẫn này sẽ hướng dẫn bạn cách sử dụng JavaScript để lấy ngày và giờ hiện tại từ ứng dụng khách
điều kiện tiên quyết
- Quen thuộc với JavaScript [bao gồm tạo, lưu và chạy tập lệnh]
- Một trình soạn thảo văn bản để viết kịch bản
- Truy cập vào trình duyệt để mở tệp HTML
Tạo đối tượng ngày trong JavaScript
Đối tượng JavaScript Date[]
trợ giúp khi làm việc với ngày tháng. Để tạo một đối tượng mới với ngày và giờ hiện tại, hãy thêm đối tượng vào tập lệnh của bạn
Demo: Current Date
Lưu mã vào một. html và mở bằng trình duyệt của bạn
Đối tượng hiển thị ngày, giờ và múi giờ hiện tại
Dưới đây là các phương pháp để lấy các phần tử ngày và giờ riêng lẻ
Sử dụng phương thức Get để hiển thị ngày hiện tại trong JavaScript
Nếu bạn muốn lấy ngày ở định dạng YYYY-MM-DD, hãy tạo một tài liệu HTML và thêm đoạn mã sau
Demo: Current Date
Dòng thứ hai trong tập lệnh bao gồm các hướng dẫn sau
date.getFullYear[]
– Sử dụng biến hôm nay để hiển thị năm có 4 chữ sốdate.getMonth[]+1
– Hiển thị tháng số. +1 chuyển đổi tháng từ kỹ thuật số [0-11] sang bình thườngdate.getDate[]
– Hiển thị số ngày trong tháng
Nếu bạn thích một định dạng khác, chỉ cần thay đổi thứ tự của các lệnh
Ghi chú. Có một dấu gạch ngang giữa mỗi lệnh. Điều này tạo ra một dấu gạch ngang giữa mỗi phân đoạn của ngày
Hiển thị Giờ, Phút và Giây bằng JavaScript
Để hiển thị thời gian trong HH. MM. Định dạng SS, chỉnh sửa tập lệnh của bạn để trông như sau
Demo: Current Date
date.getHours[]
– Điều này sử dụng biến hôm nay để hiển thị giờ hiện tại. Cái này sử dụng đồng hồ 24 giờ
0 – Hiển thị số phút hiện tạiDemo: Current Date
1 – Hiển thị số giây hiện tạiDemo: Current Date
Ghi chú. Có dấu hai chấm giữa mỗi câu lệnh. Điều này đặt một dấu hai chấm giữa mỗi màn hình số để nó đọc giống như một chiếc đồng hồ
Hiển thị đầy đủ ngày và giờ hiện tại trong JavaScript
Kết hợp hai lệnh để hiển thị đầy đủ ngày và giờ trong YYYY-MM-DD và HH. MM. định dạng SS. Chỉnh sửa kịch bản của bạn như sau
Demo: Current Date
Dòng cuối cùng kết hợp hai đoạn mã khác. Điều này hướng dẫn hệ thống hiển thị ngày đầy đủ bên cạnh toàn thời gian
Phần kết luận
Bây giờ bạn có thể viết một đoạn JavaScript đơn giản để truy xuất ngày giờ hiện tại. Điều này có thể hữu ích để tạo dấu thời gian, bằng cách liên kết tập lệnh này với một hành động và ghi nó vào tệp nhật ký
Hàm tạo Date[]
có thể tạo một thể hiện Date
hoặc trả về một chuỗi biểu thị thời gian hiện tại
new Date[]
new Date[value]
new Date[dateString]
new Date[dateObject]
new Date[year, monthIndex]
new Date[year, monthIndex, day]
new Date[year, monthIndex, day, hours]
new Date[year, monthIndex, day, hours, minutes]
new Date[year, monthIndex, day, hours, minutes, seconds]
new Date[year, monthIndex, day, hours, minutes, seconds, milliseconds]
Date[]
Ghi chú. Date[]
có thể được gọi cùng hoặc không cùng với new
, nhưng với các hiệu ứng khác nhau. Thấy
Có năm biểu mẫu cơ bản cho hàm tạo Date[]
Không có tham số
Khi không có tham số nào được cung cấp, đối tượng Date
mới tạo đại diện cho ngày và giờ hiện tại kể từ thời điểm khởi tạo
Giá trị thời gian hoặc số dấu thời gian
const today = new Date[];
const birthday = new Date["December 17, 1995 03:24:00"]; // DISCOURAGED: may not work in all runtimes
const birthday = new Date["1995-12-17T03:24:00"]; // This is ISO-8601-compliant and will work reliably
const birthday = new Date[1995, 11, 17]; // the month is 0-indexed
const birthday = new Date[1995, 11, 17, 3, 24, 0];
const birthday = new Date[628021800000]; // passing epoch timestamp
1Một giá trị số nguyên biểu thị số mili giây kể từ ngày 1 tháng 1 năm 1970, 00. 00. 00 UTC [kỷ nguyên ECMAScript, tương đương với kỷ nguyên UNIX], bỏ qua các giây nhuận. Hãy nhớ rằng hầu hết các chức năng chỉ chính xác đến giây gần nhất
chuỗi ngày
const today = new Date[];
const birthday = new Date["December 17, 1995 03:24:00"]; // DISCOURAGED: may not work in all runtimes
const birthday = new Date["1995-12-17T03:24:00"]; // This is ISO-8601-compliant and will work reliably
const birthday = new Date[1995, 11, 17]; // the month is 0-indexed
const birthday = new Date[1995, 11, 17, 3, 24, 0];
const birthday = new Date[628021800000]; // passing epoch timestamp
2Một giá trị chuỗi đại diện cho một ngày, ở định dạng được nhận dạng bởi phương thức
const today = new Date[];
const birthday = new Date["December 17, 1995 03:24:00"]; // DISCOURAGED: may not work in all runtimes
const birthday = new Date["1995-12-17T03:24:00"]; // This is ISO-8601-compliant and will work reliably
const birthday = new Date[1995, 11, 17]; // the month is 0-indexed
const birthday = new Date[1995, 11, 17, 3, 24, 0];
const birthday = new Date[628021800000]; // passing epoch timestamp
3. [Thông số kỹ thuật ECMA262 chỉ định một , nhưng các định dạng khác có thể được xác định theo triển khai, thường bao gồm. ]Ghi chú. Khi phân tích chuỗi ngày bằng hàm tạo Date
[và
const today = new Date[];
const birthday = new Date["December 17, 1995 03:24:00"]; // DISCOURAGED: may not work in all runtimes
const birthday = new Date["1995-12-17T03:24:00"]; // This is ISO-8601-compliant and will work reliably
const birthday = new Date[1995, 11, 17]; // the month is 0-indexed
const birthday = new Date[1995, 11, 17, 3, 24, 0];
const birthday = new Date[628021800000]; // passing epoch timestamp
5, chúng tương đương nhau], luôn đảm bảo rằng đầu vào tuân theo định dạng ISO 8601 [const today = new Date[];
const birthday = new Date["December 17, 1995 03:24:00"]; // DISCOURAGED: may not work in all runtimes
const birthday = new Date["1995-12-17T03:24:00"]; // This is ISO-8601-compliant and will work reliably
const birthday = new Date[1995, 11, 17]; // the month is 0-indexed
const birthday = new Date[1995, 11, 17, 3, 24, 0];
const birthday = new Date[628021800000]; // passing epoch timestamp
6] — hành vi phân tích cú pháp với các định dạng khác được xác định theo triển khai và có thể không hoạt động trên tất cả các trình duyệt. Chỉ hỗ trợ các chuỗi định dạng RFC 2822 theo quy ước. Một thư viện có thể trợ giúp nếu nhiều định dạng khác nhau được cung cấpCác chuỗi chỉ có ngày [e. g.
const today = new Date[];
const birthday = new Date["December 17, 1995 03:24:00"]; // DISCOURAGED: may not work in all runtimes
const birthday = new Date["1995-12-17T03:24:00"]; // This is ISO-8601-compliant and will work reliably
const birthday = new Date[1995, 11, 17]; // the month is 0-indexed
const birthday = new Date[1995, 11, 17, 3, 24, 0];
const birthday = new Date[628021800000]; // passing epoch timestamp
7] được coi là UTC, trong khi các chuỗi ngày giờ [e. g. const today = new Date[];
const birthday = new Date["December 17, 1995 03:24:00"]; // DISCOURAGED: may not work in all runtimes
const birthday = new Date["1995-12-17T03:24:00"]; // This is ISO-8601-compliant and will work reliably
const birthday = new Date[1995, 11, 17]; // the month is 0-indexed
const birthday = new Date[1995, 11, 17, 3, 24, 0];
const birthday = new Date[628021800000]; // passing epoch timestamp
8] được coi là cục bộ. Do đó, bạn cũng nên đảm bảo định dạng đầu vào nhất quán giữa hai loạiđối tượng ngày
const today = new Date[];
const birthday = new Date["December 17, 1995 03:24:00"]; // DISCOURAGED: may not work in all runtimes
const birthday = new Date["1995-12-17T03:24:00"]; // This is ISO-8601-compliant and will work reliably
const birthday = new Date[1995, 11, 17]; // the month is 0-indexed
const birthday = new Date[1995, 11, 17, 3, 24, 0];
const birthday = new Date[628021800000]; // passing epoch timestamp
9Một đối tượng Date
hiện có. Điều này thực sự tạo một bản sao của đối tượng Date
hiện có với cùng ngày và giờ. Điều này tương đương với
console.log[new Date[undefined]]; // Invalid Date
2, ngoại trừ phương thức console.log[new Date[undefined]]; // Invalid Date
3 không được gọiKhi một tham số được chuyển đến hàm tạo Date[]
, các thể hiện Date
được xử lý đặc biệt. Tất cả các giá trị khác là. Nếu kết quả là một chuỗi, nó sẽ được phân tích thành chuỗi ngày. Mặt khác, kết quả nguyên thủy tiếp tục bị ép buộc thành một số và được coi là dấu thời gian
Các giá trị thành phần ngày và giờ riêng lẻ
Cho trước ít nhất một năm và tháng, dạng Date[]
này trả về một đối tượng Date
có các giá trị thành phần [năm, tháng, ngày, giờ, phút, giây và mili giây] đều đến từ các tham số sau. Bất kỳ trường nào bị thiếu đều được cung cấp giá trị thấp nhất có thể [
console.log[new Date[undefined]]; // Invalid Date
8 cho console.log[new Date[undefined]]; // Invalid Date
9 và console.log[new Date[null]]; // 1970-01-01T00:00:00.000Z
0 cho mọi thành phần khác]. Tất cả các giá trị tham số đều được đánh giá theo múi giờ địa phương, thay vì UTCNếu bất kỳ tham số nào vượt quá giới hạn đã xác định của nó, nó sẽ "chuyển sang". Ví dụ: nếu một
console.log[new Date[null]]; // 1970-01-01T00:00:00.000Z
1 lớn hơn console.log[new Date[null]]; // 1970-01-01T00:00:00.000Z
2 được chuyển vào, những tháng đó sẽ khiến năm tăng lên; . Do đó, console.log[new Date[null]]; // 1970-01-01T00:00:00.000Z
6 sẽ trở lại vào ngày 1 tháng 1 năm 1991; . 05 A. M. Ngày 20 tháng 6 năm 2020Tương tự, nếu có thông số nào nằm dưới, nó sẽ "mượn" từ các vị trí cao hơn. Ví dụ:
console.log[new Date[null]]; // 1970-01-01T00:00:00.000Z
8 sẽ trở lại vào ngày 31 tháng 5 năm 2020console.log[new Date[null]]; // 1970-01-01T00:00:00.000Z
9Giá trị số nguyên đại diện cho năm. Các giá trị từ
console.log[new Date[null]]; // 1970-01-01T00:00:00.000Z
0 đến console.log[new Date[["2020-06-19", "17:13"]]];
// 2020-06-19T17:13:00.000Z in Chrome, since it recognizes "2020-06-19,17:13"
// "Invalid Date" in Firefox
1 ánh xạ tới các năm console.log[new Date[["2020-06-19", "17:13"]]];
// 2020-06-19T17:13:00.000Z in Chrome, since it recognizes "2020-06-19,17:13"
// "Invalid Date" in Firefox
2 đến console.log[new Date[["2020-06-19", "17:13"]]];
// 2020-06-19T17:13:00.000Z in Chrome, since it recognizes "2020-06-19,17:13"
// "Invalid Date" in Firefox
3. Tất cả các giá trị khác là năm thực. xemconsole.log[new Date[null]]; // 1970-01-01T00:00:00.000Z
1Giá trị số nguyên đại diện cho tháng, bắt đầu bằng
console.log[new Date[null]]; // 1970-01-01T00:00:00.000Z
0 cho tháng 1 đến console.log[new Date[null]]; // 1970-01-01T00:00:00.000Z
2 cho tháng 12console.log[new Date[undefined]]; // Invalid Date
9 Tùy chọnGiá trị số nguyên đại diện cho ngày trong tháng. Mặc định là
console.log[new Date[undefined]]; // Invalid Date
8console.log[new Date[null]]; // 1970-01-01T00:00:00.000Z
5 Tùy chọnGiá trị số nguyên giữa
console.log[new Date[null]]; // 1970-01-01T00:00:00.000Z
0 và Date[]
1 đại diện cho giờ trong ngày. Mặc định là console.log[new Date[null]]; // 1970-01-01T00:00:00.000Z
0console.log[new Date[null]]; // 1970-01-01T00:00:00.000Z
3 Tùy chọnGiá trị số nguyên biểu thị phân đoạn phút của thời gian. Giá trị mặc định là 1 giờ 19_______ 0 phút
Date[]
5 Tùy chọnGiá trị số nguyên biểu thị phân đoạn thứ hai của thời gian. Mặc định là
console.log[new Date[null]]; // 1970-01-01T00:00:00.000Z
0 giây qua phútDate[]
7 Tùy chọnGiá trị số nguyên biểu thị phân đoạn mili giây của thời gian. Mặc định là
console.log[new Date[null]]; // 1970-01-01T00:00:00.000Z
0 mili giây sau giâyGọi Date[]
9 [hàm tạo Date[]
] trả về một đối tượng Date
. Nếu được gọi với một chuỗi ngày không hợp lệ, hoặc nếu ngày được xây dựng sẽ có dấu thời gian UNIX nhỏ hơn Date
2 hoặc lớn hơn Date
3 mili giây, nó sẽ trả về một đối tượng Date
có phương thức Date
5 trả về chuỗi ký tự Date
6
Gọi hàm Date[]
[không có từ khóa new
] trả về một chuỗi đại diện của ngày và giờ hiện tại, chính xác như ___________9. Bất kỳ đối số nào được đưa ra trong lệnh gọi hàm Date[]
[không có từ khóa new
] đều bị bỏ qua;
Các ví dụ sau đây cho thấy một số cách để tạo ngày JavaScript
const today = new Date[];
const birthday = new Date["December 17, 1995 03:24:00"]; // DISCOURAGED: may not work in all runtimes
const birthday = new Date["1995-12-17T03:24:00"]; // This is ISO-8601-compliant and will work reliably
const birthday = new Date[1995, 11, 17]; // the month is 0-indexed
const birthday = new Date[1995, 11, 17, 3, 24, 0];
const birthday = new Date[628021800000]; // passing epoch timestamp
Nếu hàm tạo Date[]
được gọi với một tham số không phải là một thể hiện của Date
, thì nó sẽ bị ép buộc thành một hàm nguyên thủy và sau đó được kiểm tra xem đó có phải là một chuỗi không. Ví dụ: Date[]
4 khác với Date[]
9
console.log[new Date[undefined]]; // Invalid Date
Điều này là do Date[]
6 đã là một số nguyên thủy nhưng không phải là một chuỗi, do đó, nó sẽ bị ép buộc thành một số, đó là Date[]
7 và do đó không phải là dấu thời gian hợp lệ. Mặt khác, Date[]
8 sẽ bị cưỡng chế để
console.log[new Date[null]]; // 1970-01-01T00:00:00.000Z
0console.log[new Date[null]]; // 1970-01-01T00:00:00.000Z
Mảng sẽ được ép thành một chuỗi thông qua new
0, nối các phần tử bằng dấu phẩy. Tuy nhiên, chuỗi kết quả cho bất kỳ mảng nào có nhiều hơn một phần tử không phải là chuỗi ngày hợp lệ theo tiêu chuẩn ISO 8601, vì vậy hành vi phân tích cú pháp của nó sẽ được xác định theo triển khai. Không truyền mảng cho hàm tạo Date[]