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

298
Views
For loop no está almacenando los datos correctamente, ¿dónde estoy cometiendo el error?

En el código a continuación, estoy recorriendo los results.data.data.length y estoy obteniendo los datos correctos y almacenándolos correctamente también.

Los datos:

 param1 = [6, 27, 34, 22, 23, 25, 28, 24, 26, 30, 29] // => array length 11

Ahora, la parte con la que tengo un problema, en el segundo bucle obtengo el resultado correcto para EnrolledNum y obtengo 11 números emitidos pero individualmente. Hasta aquí todo bien.

Aquí está el problema, cuando trato de almacenar los valores en la matriz vacía var EnrolledNum = [] , solo almacena el último número. Soy console.log dentro y fuera del ciclo para asegurarme de que todo esté bien. El que está dentro del ciclo lo está registrando individualmente correctamente, pero el exterior del ciclo me muestra una matriz de longitud = 1, que es el último número. Cuál es el problema aquí?

 fetchInitialData = async () => { this.setGlobal({ loading: true }); const ep = `${process.env.REACT_APP_API}/partners/programs/list`; const results = await axios.get(ep); console.log("results data", results); var param1 = []; for (let i = 0; i < results.data.data.length; i++) { param1.push(results.data.data[i].id); } console.log("Param....", param1); for (let j = 0; j < param1.length; j++) { console.log('chekcingJ',j,'CheckingParam#', param1[j]) const customers_ep = `${process.env.REACT_APP_API}/partners/programs/customers/${param1[j]}`; const customers = await axios.get(customers_ep); console.log("customers....", customers); var EnrolledNum = []; EnrolledNum.push( customers.data.data.filter( e => e.status_stage === "Accepted_Paid" || e.status_stage === "Accepted_Manual" ).length ); console.log("In the Loop: EnrolledNumber...", EnrolledNum); } console.log("Outside the Loop: EnrolledNumber...", EnrolledNum); };
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Tienes que mover la var EnrolledNum = []; fuera del bucle for

De lo contrario, está creando la variable cada vez que entra en el ciclo y la crea como una matriz vacía.

Probar esto:

 etchInitialData = async () => { this.setGlobal({ loading: true }); const ep = `${process.env.REACT_APP_API}/partners/programs/list`; const results = await axios.get(ep); console.log("results data", results); var param1 = []; for (let i = 0; i < results.data.data.length; i++) { param1.push(results.data.data[i].id); } console.log("Param....", param1); var EnrolledNum = []; for (let j = 0; j < param1.length; j++) { console.log('chekcingJ',j,'CheckingParam#', param1[j]) const customers_ep = `${process.env.REACT_APP_API}/partners/programs/customers/${param1[j]}`; const customers = await axios.get(customers_ep); console.log("customers....", customers); EnrolledNum.push( customers.data.data.filter( e => e.status_stage === "Accepted_Paid" || e.status_stage === "Accepted_Manual" ).length ); console.log("In the Loop: EnrolledNumber...", EnrolledNum); } console.log("Outside the Loop: EnrolledNumber...", EnrolledNum); };
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!