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

148
Views
Ordenar ID que son solo números en una matriz de objetos

Tengo un archivo JSON con datos dentro de un usuario

 [ { "_id": "62bd5fba34a8f1c90303055c", "index": 0, "email": "mcdonaldholden@xerex.com", "nameList": [ { "id": 0, "name": "Wendi Mooney" }, { "id": 2, "name": "Holloway Whitehead" } ] }, { "_id": "62bd5fbac3e5a4fca5e85e81", "index": 1, "nameList": [ { "id": 0, "name": "Janine Barrett" }, { "id": 1, "name": "Odonnell Savage" }, { "id": 2, "name": "Patty Owen" } ] }, { "_id": "62bd5fbaf8f417d849c135db", "index": 2, "email": "pattyowen@xerex.com", "nameList": [ { "id": 0, "name": "Earline Goff" }, { "id": 1, "name": "Glenna Lawrence" }, { "id": 7, "name": "Bettye Sawyer" } ]

Tuve que ordenar a cada usuario por: si el usuario tiene más de dos nombres si las identificaciones de usuario son consecutivas y si las identificaciones de usuario son números

Logré ordenar a los usuarios por más de dos nombres y si las identificaciones son consecutivas

 userData.filter(({nameList}) => nameList.length > 2 && !nameList.some(({id}, index, array) => index && array[index - 1].id !== id - 1) );

En el caso de que un objeto tenga una identificación como número, no debería devolver los objetos. ¿Cómo puedo implementar eso en mi código?

Se espera que la salida sean todas las matrices que cumplen con el filtro y algunos () criterios. Que es si los objetos tienen más de 2 nombres, sus identificaciones son consecutivas y las identificaciones deben ser un número.

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

0

Si desea verificar si la id es del tipo número:

 (typeof id == "number")

Para comprobar si se puede convertir a un número

 (id == parseInt(id, 10))

El código completo entonces (estabas cerca):

 var userData = get_data(); userData = userData.filter(function(item) { return item.nameList.length > 2 && item.nameList.every(function(item, index, arr) { return parseInt(item.id) == item.id && (index == 0 || item.id - arr[index - 1].id == 1) }) }) console.log(userData); function get_data() { return [{ "_id": "62bd5fba34a8f1c90303055c", "index": 0, "email": "mcdonaldholden@xerex.com", "nameList": [{ "id": 0, "name": "Wendi Mooney" }, { "id": 2, "name": "Holloway Whitehead" } ] }, { "_id": "62bd5fbac3e5a4fca5e85e81", "index": 1, "nameList": [{ "id": 0, "name": "Janine Barrett" }, { "id": 1, "name": "Odonnell Savage" }, { "id": 2, "name": "Patty Owen" } ] }, { "_id": "62bd5fbaf8f417d849c135db", "index": 2, "email": "pattyowen@xerex.com", "nameList": [{ "id": 0, "name": "Earline Goff" }, { "id": 1, "name": "Glenna Lawrence" }, { "id": 7, "name": "Bettye Sawyer" } ] } ]; }
 .as-console-wrapper { max-height: 100% !important }

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!