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

114
Views
El filtro no devuelve el primer elemento de la matriz, aunque console.log dice que sí

Dadas dos matrices de enteros, quiero crear una nueva matriz con solo los valores únicos de las dos matrices de entrada. Sé que hay muchas maneras diferentes de hacer esto, pero me interesa saber por qué la forma en que intento hacerlo no funciona.

 const arr1 = [1, 2, 3, 4, 5]; const arr2 = [2, 3, 1, 0, 5]; // combine both arrays const combined = arr1.concat(arr2); // sort combined array combined.sort(); // fitler out elements identical to the preceding element const result = combined.filter((el, i, a) => { if ( (el != a[i-1]) ) { console.log("return", el); return el; } }); // print console.log(result);

Aunque cero es parte de la matriz combinada, la salida es [1,2,3,4,5]. Cuando hago console.log, definitivamente veo que mi método de filtro devuelve el elemento cero, pero por alguna razón no aparece en la matriz de resultados. ¿Qué ocurre?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

La lambda en el filter debe devolver un valor booleano ( thruthy o false ). 0 se considera falso, por lo que el valor no estará en el resultado.

Tal vez no necesite un ciclo después de todo: un Set elimina los valores duplicados.

 const arr1 = [1, 2, 3, 4, 5]; const arr2 = [2, 3, 1, 0, 5]; // use Set console.log(JSON.stringify([...new Set(arr1.concat(arr2))])); // or filter with a lambda that returns true/false const result = arr1.concat(arr2).sort().filter((val, i, a) => val !== a[i-1]); console.log(JSON.stringify(result));

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!