Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

226
Views
Momento .isAfter no regresa correctamente al comparar dos fechas

Tengo un problema con la función .isAfter(), cuando se trata de comparar "04/05/2022" con "05/03/2022" me dice que 04/05/2022> 05/03/2022 especifiqué que quiero comparar la fecha completa agregando 'día' en el argumento pero nada cambia. ¿Alguien puede ayudarme, por favor? Aquí está mi código:

 let date1 = moment("03-05-2022", "DD-MM-YYYY").format("DD-MM-YYYY"); data.forEach(d => { let test = date1; let date = moment(d.received_on).format("DD-MM-YYYY"); const { adc_v, } = d; let dateIsAfter = moment(date).isAfter(moment(date1), 'day'); let dateIsSame = moment(date).isSame(moment(date1), 'day'); // const dateIsAfter = moment(date) > moment(date1); // const dateIsSame = moment(date) == moment(date1); if (dateIsSame === true) { this.arrTension.push({ date, value: adc_v, }); console.log(date + ' : ' + adc_v); date1 = moment(date1, "DD-MM-YYYY").add(1, 'days').format('DD-MM-YYYY'); } if (dateIsAfter === true) { console.log('date = ' + date); console.log('date1 = ' + date1); date1 = moment(date1, "DD-MM-YYYY").add(1, 'days').format('DD-MM-YYYY'); } });
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Esto sucede porque no ha especificado su configuración regional.

Cuando se compara 05/04/2022>03/05/2022 , esencialmente está comprobando que el 4 de mayo de 2022 es mayor que el 5 de marzo de 2022.

Especifique la configuración regional global de la siguiente manera:

moment.locale('fr')

Luego compara las fechas como estabas antes:

moment(date).isAfter(moment(date1), 'day');

about 4 years ago · Juan Pablo Isaza Report

0

Cambié el formato y ahora funciona bien =)

 enter code herelet date1 = moment("05-03-2021", "MM-DD-YYYY").format("MM-DD-YYYY"); console.log(date1); data.forEach(d => { let test = date1; let date = moment(d.received_on).format("MM-DD-YYYY"); const { adc_v, } = d; let dateIsAfter = moment(date).locale('fr').isAfter(moment(date1), 'day'); let dateIsSame = moment(date).locale('fr').isSame(moment(date1), 'day'); // const dateIsAfter = moment(date) > moment(date1); // const dateIsSame = moment(date) == moment(date1); if (dateIsSame === true ){ this.arrTension.push({ date, value: adc_v, }); console.log(date + ' : ' + adc_v); date1 = moment(date1, "MM-DD-YYYY").locale('fr').add(1, 'days').format('MM-DD-YYYY'); } if (dateIsAfter === true ){ console.log('date = ' + date); console.log('date1 = ' + date1); date1 = moment(date1, "MM-DD-YYYY").locale('fr').add(1, 'days').format('MM-DD-YYYY'); } });
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!