Dadas dos fechas y la tarea es obtener la array de fechas entre las dos fechas dadas usando JavaScript.
Enfoque 1:
- Seleccione la primera y última fecha y guárdela en variable.
- Verifique si la fecha de inicio es menor que la fecha de finalización, luego presione la fecha actual en una array e incremente su valor en 1 día.
- Repita el paso anterior hasta que la fecha actual sea igual a la última fecha.
Ejemplo: En este ejemplo, la array de fechas está determinada por el enfoque anterior.
<!DOCTYPE HTML> <html> <head> <title> How to get the array of dates between two dates in JavaScript ? </title> </head> <body style = "text-align:center;"> <h1 style = "color:green;" > GeeksForGeeks </h1> <p id = "GFG_UP" style = "font-size: 19px; font-weight: bold;"> </p> <button onclick = "GFG_Fun()"> click here </button> <p id = "GFG_DOWN" style = "color: green; font-size: 24px; font-weight: bold;"> </p> <script> var el_up = document.getElementById("GFG_UP"); var el_down = document.getElementById("GFG_DOWN"); el_up.innerHTML = "Click on the button to get the " + "array of dates between 2 dates."; Date.prototype.addDay = function(days) { var date = new Date(this.valueOf()); date.setDate(date.getDate() + days); return date; } function getDate(strDate, stpDate) { var dArray = new Array(); var cDate = strDate; while (cDate <= stpDate) { // Adding the date to array dArray.push(new Date (cDate) + '<br>'); // Increment the date by 1 day cDate = cDate.addDay(1); } return dArray; } function GFG_Fun() { var startDate = new Date(); // Making lastDate equal to 4 more days // from startDate. var endDate = startDate.addDay(4); el_down.innerHTML = getDate(startDate, endDate); } </script> </body> </html>
Producción:
- Antes de hacer clic en el botón:
- Después de hacer clic en el botón:
Enfoque 2:
- Obtenga la primera y la última fecha y guárdela en la variable.
- Calcula el equivalente de 1 día en milisegundos llamado _1Day.
- Establezca una variable igual a la fecha de inicio, llamada ms
- Presione ms (milisegundos) en forma de fecha en una array e incremente su valor en _1Día.
- Repita el paso anterior hasta que el ms sea igual a la última fecha.
Ejemplo: En este ejemplo, la array de fechas está determinada por el enfoque anterior.
<!DOCTYPE HTML> <html> <head> <title> How to get the array of dates between two dates in JavaScript ? </title> </head> <body style = "text-align:center;"> <h1 style = "color:green;" > GeeksForGeeks </h1> <p id = "GFG_UP" style = "font-size: 19px; font-weight: bold;"> </p> <button onclick = "GFG_Fun()"> click here </button> <p id = "GFG_DOWN" style = "color: green; font-size: 24px; font-weight: bold;"> </p> <script> var el_up = document.getElementById("GFG_UP"); var el_down = document.getElementById("GFG_DOWN"); el_up.innerHTML = "Click on the button to get the " + "array of dates between 2 dates."; Date.prototype.addDay = function(days) { var date = new Date(this.valueOf()); date.setDate(date.getDate() + days); return date; } function getDates( date1, date2 ) { var _1Day = 24*3600*1000; // Date[] keeps all the dates for (var date = [], ms = date1 * 1, last = date2 * 1; ms < last ; ms += _1Day) { // Adding ms to the date and ms+= _1Day // increments the date by 1 day date.push( new Date(ms) + '<br>'); } return date; } function GFG_Fun() { var startDate = new Date(); // Making lastDate equal to 4 more days // from startDate var endDate = startDate.addDay(4); el_down.innerHTML = getDates(startDate, endDate); } </script> </body> </html>
Producción:
- Antes de hacer clic en el botón:
- Después de hacer clic en el botón:
Publicación traducida automáticamente
Artículo escrito por PranchalKatiyar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA