Tengo una serie de fechas. Quiero devolver las fechas entre el 01 de enero de 2022 y el 31 de diciembre de 2022.
Cuando ejecuto el corte a continuación, no devuelve nada. Esta es una de las muchas variaciones de bucle diferentes que he intentado en vano. Por favor ayuda TIA
var start = new Date(2022, 0, 01); //returns Sat Jan 01 00:00:00 GMT-06:00 2022 var end = new Date(2022, 11, 01); //returns Sat Dec 31 00:00:00 GMT-06:00 2022 var arr = [Fri Dec 03 2021 00:00:00 GMT-0600 (Central Standard Time), Fri Dec 10 2021 00:00:00 GMT-0600 (Central Standard Time), Fri Dec 17 2021 00:00:00 GMT-0600 (Central Standard Time), Fri Dec 24 2021 00:00:00 GMT-0600 (Central Standard Time), Fri Dec 31 2021 00:00:00 GMT-0600 (Central Standard Time), Fri Jan 07 2022 00:00:00 GMT-0600 (Central Standard Time), Fri Jan 14 2022 00:00:00 GMT-0600 (Central Standard Time), Fri Jan 21 2022 00:00:00 GMT-0600 (Central Standard Time), Fri Jan 28 2022 00:00:00 GMT-0600 (Central Standard Time), ...](**output** NOT the actual script) for(var i=0; i<=arr.length; i++){ if(arr[i] >= start && arr[i] <= end){ Logger.log(arr[i]); } }arr . Porque en su secuencia de comandos, cuando guarda la secuencia de comandos, se produce un error. Así que me preocupa que su guión real sea diferente del guión que muestra. Si cada valor de arr es del tipo de cadena como Fri Dec 03 2021 00:00:00 GMT-0600 (Central Standard Time) , escríbalo con comillas simples o dobles.Cuando estos puntos se reflejan en su guión, se convierte en lo siguiente.
var start = new Date(2022, 0, 01); //returns Sat Jan 01 00:00:00 GMT-06:00 2022 var end = new Date(2022, 11, 01); //returns Sat Dec 31 00:00:00 GMT-06:00 2022 var arr = [ "Fri Dec 03 2021 00:00:00 GMT-0600 (Central Standard Time)", "Fri Dec 10 2021 00:00:00 GMT-0600 (Central Standard Time)", "Fri Dec 17 2021 00:00:00 GMT-0600 (Central Standard Time)", "Fri Dec 24 2021 00:00:00 GMT-0600 (Central Standard Time)", "Fri Dec 31 2021 00:00:00 GMT-0600 (Central Standard Time)", "Fri Jan 07 2022 00:00:00 GMT-0600 (Central Standard Time)", "Fri Jan 14 2022 00:00:00 GMT-0600 (Central Standard Time)", "Fri Jan 21 2022 00:00:00 GMT-0600 (Central Standard Time)", "Fri Jan 28 2022 00:00:00 GMT-0600 (Central Standard Time)", ]; for (var i = 0; i <= arr.length; i++) { if (new Date(arr[i]).getTime() >= start.getTime() && new Date(arr[i]).getTime() <= end.getTime()) { console.log(arr[i]); } }Pude resolverlo gracias por tu aporte. El problema era que necesitaba establecer arr[i] en una nueva fecha (arr[i]). A continuación se muestra el código actualizado.
var start = new Date(2022, 0, 01); //returns Sat Jan 01 00:00:00 GMT-06:00 2022 var end = new Date(2022, 11, 01); //returns Sat Dec 31 00:00:00 GMT-06:00 2022 var arr = [Fri Dec 03 2021 00:00:00 GMT-0600 (Central Standard Time), Fri Dec 10 2021 00:00:00 GMT-0600 (Central Standard Time), Fri Dec 17 2021 00:00:00 GMT-0600 (Central Standard Time), Fri Dec 24 2021 00:00:00 GMT-0600 (Central Standard Time), Fri Dec 31 2021 00:00:00 GMT-0600 (Central Standard Time), Fri Jan 07 2022 00:00:00 GMT-0600 (Central Standard Time), Fri Jan 14 2022 00:00:00 GMT-0600 (Central Standard Time), Fri Jan 21 2022 00:00:00 GMT-0600 (Central Standard Time), Fri Jan 28 2022 00:00:00 GMT-0600 (Central Standard Time), ...](**output of the array** NOT the actual script) for(var i=0; i<=arr.length; i++){ var arrI = new Date(arr[i]); if(arrI >= start && arrI <= end){ Logger.log(arrI); } }