⊗jsPmTmSC 335 of 505 menu

So sánh chuỗi ngày tháng trong JavaScript

Giả sử chúng ta có hai ngày ở định dạng văn bản như sau:

let date1 = '2020-12-01'; let date2 = '2019-12-01';

Trong trường hợp như vậy, bạn có thể thực hiện so sánh hai ngày này và tìm hiểu xem ngày nào lớn hơn:

console.log(date1 > date2); // sẽ hiển thị true

So sánh các ngày này diễn ra như thế nào? Vấn đề là các ngày của chúng ta đại diện cho các chuỗi và JavaScript so sánh chúng như các chuỗi. Điều đó có nghĩa là đầu tiên nó so sánh các ký tự đầu tiên của hai ngày: nếu chúng giống nhau, thì JavaScript so sánh các ký tự thứ hai, và cứ như vậy, cho đến khi tìm thấy sự khác biệt. Nhờ vào việc trong định dạng ngày của chúng ta, đầu tiên là năm, sau đó là tháng, và rồi đến ngày, nên việc so sánh như vậy mới có thể thực hiện được.

Vấn đề là nếu chữ số đầu tiên của năm đầu tiên lớn hơn chữ số đầu tiên của năm thứ hai, điều đó có nghĩa là đã không còn quan trọng những gì ở tháng và ngày nữa - năm đầu tiên chắc chắn đã lớn hơn. Nếu các năm trùng nhau, thì ngày lớn hơn sẽ là ngày có tháng lớn hơn. Và nếu các tháng cũng trùng nhau, thì lớn hơn sẽ là ngày có ngày lớn hơn. Và, nếu các ngày cũng giống nhau, thì các ngày bằng nhau.

Điều quan trọng nữa là các ngày phải ở cùng một định dạng. Trong trường hợp của chúng ta, dấu phân cách giữa các phần của ngày là dấu gạch ngang. Điều này, tất nhiên, không bắt buộc. Ví dụ, bạn có thể đặt dấu chấm:

let date1 = '2020.12.01'; let date2 = '2019.12.01';

Hoặc thậm chí bỏ dấu phân cách:

let date1 = '20201201'; let date2 = '20191201';

Điều chính là để việc so sánh được chính xác, thứ tự sắp xếp phải như sau: đầu tiên là năm, sau đó là tháng, rồi đến ngày.

Viết mã so sánh hai ngày được cung cấp dưới đây và hiển thị thông báo về việc ngày nào lớn hơn:

let date1 = '2020-11-30'; let date2 = '2020-12-01';
Tiếng Việt
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbek
Chúng tôi sử dụng cookie để vận hành trang web, phân tích và cá nhân hóa. Việc xử lý dữ liệu được thực hiện tuân theo Chính sách bảo mật.
chấp nhận tất cả tùy chỉnh từ chối