Compare date JavaScript - So sánh 2 ngày trong javascript

Nội dung bài viết

Video học lập trình mỗi ngày

So sánh 2 ngày trong javascript, đây là một bài viết nhỏ nhỏ và để tôi kể cho các anh chị nghe một tình huống về một bạn cũng có exp 1 năm rồi, chú ý bài viết chỉ tips khắc phục không có ý định cười. Vì tôi cũng một thời như thế...

So sánh datetime trong JavaScript

Ai cũng bị ít nhất một lần mà thôi, cho nên ghi lại cho mấy bạn sau này tự nhìn rồi cười... Nếu chúng ta muốn so sánh 2 ngày trong javascript thì chúng ta không nên so sánh trực tiếp với Object vì các bạn chỉ có thiệt mà thôi. Đơn giản vì sao, bởi vì objects JavaScript các đối tượng là một kiểu tham chiếu.

Hai đối tượng khác biệt không bao giờ bằng nhau, ngay cả khi chúng có cùng tính chất. Điều đó cho nên một khi chúng ta làm như thế này để Compare date JavaScript là sai hoàn toàn.

Ví dụ:

const event = new Date('05 October 2021 14:48 UTC');
const event1 = new Date('05 October 2021 14:48 UTC');

console.log(event === event1); // return false

Compare date JavaScript

Vậy cách giải quyết như thế nào? Rất đơn giản chúng ta có thể sử dụng những thuộc tính của Date như Date.prototype.toISOString(),Date.prototype.toUTCString(), Date.prototype.toLocaleDateString(). Cùng xem ví dụ sau đây.

Ví dụ:

const event = new Date('05 October 2021 14:48 UTC');
const event1 = new Date('05 October 2021 14:48 UTC');

console.log(event.toISOString() === event1.toISOString()); // return true
console.log(event.toUTCString() === event1.toUTCString()); // return true
console.log(event.toLocaleDateString() === event1.toLocaleDateString()); // return true

Nhưng có một cách tuyệt hơn mà tôi cũng thường sử đụng đó là Date.prototype.getTime(), đơn giản là nó rất dễ sử dụng và thân thuộc với chúng ta nhiều hơn.

Ví dụ:

const event = new Date('05 October 2021 14:48 UTC');
const event1 = new Date('05 October 2021 14:48 UTC');

console.log(event.getTime() === event1.getTime()); // return true

Có nhiều phương pháp để bạn làm được điều đó nhưng bạn nên sử dụng getTime() thì tốt hơn.

Có thể bạn đã bị missing