Làm cách nào để so sánh hai ngày ở định dạng DD MMM YYYY trong JavaScript?

Để so sánh sự xuất hiện của các ngày trong JavaScript, có một số cách được xác định trước. Để kiểm tra ngày tháng, bước đầu tiên là tạo một đối tượng ngày tháng bằng hàm tạo Date(). Sau đó, chúng ta có thể kiểm tra chúng bằng nhiều cách khác nhau - sử dụng toán tử so sánh > hoặc < hoặc bằng cách sử dụng hàm getTime() có sẵn, có thể kiểm tra trực tiếp hai ngày tháng

Phạm vi

  • Bài viết này đề cập đến việc so sánh hai ngày trong JavaScript
  • Nhiều cách khác nhau để so sánh ngày trong javascript được thảo luận sâu cùng với các ví dụ của chúng

Giới thiệu

Là lập trình viên, bạn có thể phải xử lý các ngày trong khi phát triển ứng dụng. Đó có thể là khi các ngày được so sánh về điểm danh của học sinh, dấu thời gian hoặc ngày sinh của nhân viên; . JavaScript cung cấp tính năng so sánh ngày tháng nên chúng ta không phải tự viết hàm, tiết kiệm thời gian

Đối tượng Date trong JavaScript được sử dụng để làm việc với ngày và giờ. Nó cho phép chúng ta tạo một ngày mới với ngày và giờ đã chỉ định. Ngày có thể ở bất kỳ định dạng nào như YYYY, MM, DD hoặc YYYY-MM-DDTHH. MM. SSZ, v.v. Chúng ta có thể tạo một đối tượng ngày mới bằng cách sử dụng hàm tạo Date()

Cú pháp-

Thí dụ-

console.log(new Date())
console.log(new Date('October 17, 2019 13:24:00'))
console.log(new Date('1997-12-17'))//YYYY-MM-DD
console.log(new Date(2019, 11, 17, 13, 24, 0))//YYYY,MM,DD,Hr,Mins,Sec

Đầu ra-

2022-04-23T20:33:36.310Z
2019-10-17T07:54:00.000Z
1997-12-17T00:00:00.000Z
2019-12-17T07:54:00.000Z

Chúng ta có thể so sánh hai ngày trong JavaScript bằng cách sử dụng toán tử so sánh > hoặc <. Chúng ta cũng có thể sử dụng hàm getTime() để so sánh ngày trong JavaScript. Trong phần tiếp theo, chúng ta sẽ thảo luận về các phương pháp trên

Ngày có thể được so sánh với ngày khác bằng cách sử dụng > hoặc <. Chúng tôi sẽ kiểm tra ngày nào trước

var one = new Date(2021, 01, 15); //Year, Month, Date    
var two = new Date(2021, 02, 05); //Year, Month, Date    
if (one > two) {  //if the occurence of date one is later,i.e, it is greater  
  console.log("Date one is greater than Date two.");    
}else { //if the occurence of date two is later,i.e, it is greater 
  console.log("Date two is greater than Date one.");    
}

Đầu ra-

Date two is greater than Date one.

Lưu ý- Khi chúng ta muốn so sánh ngày tháng trong JavaScript, chỉ các toán tử so sánh < và > mới hoạt động. Các toán tử == và === không hoạt động để so sánh ngày tháng. Điều này là do hai đối tượng riêng biệt không bao giờ bằng nhau đối với các phép so sánh chặt chẽ hoặc trừu tượng

Ở đây ngày được đưa ra cùng với thời gian. Chúng tôi sử dụng phương pháp tương tự như đã thảo luận ở trên. Trong phương pháp trên, chúng tôi không so sánh thời gian, nhưng ở đây chúng tôi đang so sánh cả ngày và giờ của cả hai ngày đã cho

var one = new Date("Jan 15,2021 18:49:47"); //mm dd yyyy hh mm ss     
var two = new Date("Jan 15,2021 08:49:47"); //mm dd yyyy hh mm ss   
if (one > two) {    
  console.log("Date one is greater than Date two.");    
}else {    
  console.log("Date two is greater than Date one.");    
}

Đầu ra-

Date one is greater than Date two.

Cách tiếp cận tiếp theo, tôi. e. , sử dụng hàm getTime(), cho phép chúng ta so sánh ngày trực tiếp. Nó chuyển đổi dữ liệu thành một giá trị số và sau đó so sánh nó. Nó được sử dụng để trả về giá trị số tương ứng với thời gian cho ngày đã chỉ định theo giờ quốc tế. Tham số đã được chuyển đến hàm getTime() được chuyển thành ngày

Ví dụ- Hãy để chúng tôi so sánh ngày và giờ đã cho với ngày và giờ hiện tại bằng cách sử dụng hàm getTime() trong JavaScript

function compare(date, curr_date) { 
  var d=new Date(date);
  var c_d=new Date(curr_date);

  if (d.getTime() < c_d.getTime()) {//check if the date and time of d is lesser than the current date and time
    console.log("The current date and time is greater than d");
  }
  else if (d.getTime() > c_d.getTime()) {//check if the date and time of d is greater than the current date and time 
    console.log("The current date and time is smaller than d");
  }
  else {
    console.log("Both are equal");
  }
}
compare("2021-01-19, 23:39:49",new Date());//The currentdate and time is greater than d
compare("2022-04-21",new Date());//The currentdate and time is smaller than d
compare(new Date(),new Date());//Both are equal

Đầu ra-

The current date and time are greater than d
The current date and time are smaller than d
Both are equal

Có nhiều định dạng ngày khác nhau trong JavaScript. Họ đang-

Chỉ Ngày —

Ngày Với Giờ —

Trong JavaScript, chúng ta có thể thay đổi định dạng ngày tháng theo nhu cầu của mình. Có nhiều hàm khác nhau như getFullYear(), getMonth(), getTime(), v.v. có thể được sử dụng để thay đổi định dạng ngày

Thí dụ-

________số 8

Đầu ra-

2022-04-20T15:33:40.426Z
2022-4-20

Chúng tôi đã tìm nạp ngày hiện tại và sau đó chúng tôi đã tạo một biến khác được sử dụng để lưu trữ kết quả kết hợp của các hoạt động khác nhau được thực hiện bằng các hàm getFullYear(), getMonth() và getDate(). Hàm getFullYear() trả về năm của ngày đã cho trong khi hàm getMonth() trả về tháng của ngày đã cho và hàm getDate() được sử dụng để trả về ngày trong tháng của ngày đã cho

Phương thức của ngày ObjectDescripgetDate() Phương thức này được sử dụng để trả về ngày trong tháng từ 1-31 cho ngày đã cho theo giờ địa phương. getDay() Phương thức này được sử dụng để trả về ngày trong tuần từ 0-6 cho ngày đã cho theo giờ địa phương. getFullYear() Phương thức này được sử dụng để trả về năm, là một số có 4 chữ số cho ngày đã cho theo giờ địa phương. getHours() Phương thức này được sử dụng để trả về giờ của ngày đã chỉ định từ 0-23 cho ngày đã cho theo giờ địa phương. getMilliseconds() Phương thức này được sử dụng để trả về mili giây từ 0-999 cho ngày đã cho theo giờ địa phương. getMinutes() Phương thức này được sử dụng để trả về số phút từ 0-59 cho ngày đã cho theo giờ địa phương. getMonth() Phương thức này được sử dụng để trả về tháng từ 0-11 cho ngày đã cho theo giờ địa phương. get seconds() Phương thức này được sử dụng để trả về giây của ngày đã cho từ 0-59 cho ngày đã cho theo giờ địa phương. getTime() Phương thức này được sử dụng để trả về giá trị số của ngày đã cho dưới dạng số mili giây đã trôi qua kể từ ngày 1 tháng 1 năm 1970, 00. 00. 00 UTC. getTimezoneOffset() Phương thức này được sử dụng để trả về phần bù múi giờ tính bằng phút. getUTCDate() Phương thức này được sử dụng để trả về ngày trong tháng từ 1-31 cho ngày đã cho theo giờ quốc tế. getUTCDay() Phương thức này được sử dụng để trả về ngày trong tuần từ 0-6 cho ngày đã cho theo giờ quốc tế. getUTCFullYear() Phương thức này được sử dụng để trả về năm, là một số có 4 chữ số cho ngày đã cho theo giờ quốc tế. getUTCHours() Phương thức này được sử dụng để trả về giờ từ 0-23 cho ngày đã cho theo giờ quốc tế. getUTCMilliseconds() Phương thức này được sử dụng để trả về mili giây từ 0-999 cho ngày đã cho theo giờ quốc tế. getUTCMinutes() Phương thức này được sử dụng để trả về số phút từ 0-59 cho ngày đã cho theo giờ quốc tế. getUTCMonth() Phương thức này được sử dụng để trả về tháng từ 0-11 cho ngày đã cho theo giờ quốc tế. getUTCSeconds() Phương thức này được sử dụng để trả về giây của ngày đã cho từ 0-59 cho ngày đã cho theo giờ quốc tế. getYear() Phương thức này được sử dụng để trả về năm nhưng trong 2-3 chữ số, vì vậy hãy sử dụng phương thức getFullYear(). setDate() Phương thức này được sử dụng để thiết lập ngày trong tháng từ 1-31 cho ngày đã cho theo giờ địa phương. setFullYear() Phương thức này được sử dụng để đặt năm, là một số có 4 chữ số cho ngày đã cho theo giờ địa phương. setHours() Phương thức này được sử dụng để đặt giờ của ngày đã chỉ định từ 0-23 cho ngày đã cho theo giờ địa phương. setMilliseconds() Phương thức này được sử dụng để đặt mili giây từ 0-999 cho ngày đã cho theo giờ địa phương. setMinutes() Phương thức này được sử dụng để đặt phút từ 0-59 cho ngày đã cho theo giờ địa phương. setMonth() Phương thức này được sử dụng để đặt tháng từ 0-11 cho ngày đã cho theo giờ địa phương. setSeconds() Phương thức này được sử dụng để đặt giây của ngày đã cho từ 0-59 cho ngày đã cho theo giờ địa phương. setTime() Phương thức này được sử dụng để đặt giá trị số của ngày đã cho là số mili giây đã trôi qua kể từ ngày 1 tháng 1 năm 1970, 00. 00. 00 UTC. setUTCDate() Phương thức này được sử dụng để đặt ngày trong tháng từ 1 đến 31 cho ngày đã cho theo giờ quốc tế. setUTCFullYear() Phương thức này được sử dụng để đặt năm là một số có 4 chữ số cho ngày đã cho theo giờ quốc tế. setUTCHours() Phương thức này được sử dụng để đặt giờ từ 0-23 cho ngày đã cho theo giờ quốc tế. setUTCMilliseconds() Phương thức này được sử dụng để đặt mili giây từ 0-999 cho ngày đã cho theo giờ quốc tế. setUTCMinutes() Phương thức này được sử dụng để đặt phút từ 0-59 cho ngày đã cho theo giờ quốc tế. setUTCMonth() Phương thức này được sử dụng để đặt tháng từ 0-11 cho ngày đã cho theo giờ quốc tế. setUTCSeconds() Phương thức này được sử dụng để đặt giây của ngày đã cho từ **0-59 cho **ngày đã cho theo giờ quốc tế. setYear() Phương thức này được sử dụng để đặt năm nhưng có 2-3 chữ số, vì vậy hãy sử dụng phương thức setFullYear(). toDateString() Nó được sử dụng để trả về phần "ngày" ở dạng chuỗi mà con người có thể đọc được

Làm cách nào để so sánh hai định dạng ngày khác nhau trong JavaScript?

Để xử lý so sánh đẳng thức, chúng tôi sử dụng đối tượng ngày cùng với phương thức ngày getTime() trả về số mili giây. Nhưng nếu chúng ta muốn so sánh thông tin cụ thể như ngày, tháng, v.v., chúng ta có thể sử dụng các phương thức ngày khác như getDate(), getHours(), getDay(), getMonth() và getYear()

Làm cách nào để so sánh hai đối tượng ngày trong JavaScript?

Trong JavaScript, chúng ta có thể so sánh hai ngày bằng cách chuyển đổi chúng thành giá trị số tương ứng với thời gian của chúng . Đầu tiên, chúng ta có thể chuyển đổi Ngày thành giá trị số bằng cách sử dụng hàm getTime(). Bằng cách chuyển đổi các ngày đã cho thành các giá trị số, chúng ta có thể so sánh chúng trực tiếp.

Làm cách nào để so sánh hai ngày trong JavaScript bằng thời điểm?

Khoảnh khắc. js có một phương thức diff() , cho biết sự khác biệt giữa hai ngày theo năm, tháng, ngày, giờ, phút, giây, mili giây, v.v. Chúng ta có thể sử dụng đơn vị thứ hai trong trường hợp của mình để tìm sự khác biệt giữa hai ngày.

Làm cách nào để so sánh chuỗi ngày trong JavaScript?

Để so sánh hai ngày, bạn có thể sử dụng toString() hoặc valueOf() . Phương thức toString() chuyển đổi ngày thành chuỗi ngày ISO và phương thức valueOf() chuyển đổi ngày thành mili giây kể từ kỷ nguyên.