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

254
Views
Cómo obtener la matriz de objetos según el valor del objeto en javascript

Me gustaría saber cómo obtener la lista de matrices de objetos en función de los valores que coinciden en javascript

Si alguno de los valores del objeto coincide con el parámetro, devuelva esa matriz en javascript.

 var objarr = [ {id:1, email: 'xyz@gmail.com', value: 10, name: 'ram'}, {id:2, email: 'xyz@gmail.com', value: 20, name: 'Tom'}, {id:3, email: 'ss@gmail.com', value: 30, name: 'Lucas'}, {id:4, email: 'ct@gmail.com', value: 40, name: 'Chris'}, {id:5, email: 'tam@gmail.com', value: 30, name: 'Lucas Tim'} ] function getList(val){ var result=[]; var checkdata = objarr.filter(e=>{ if(Object.values(e)===val){ result.push(e); } return result; }) } console.log(result); Expected Output: getList('xyz@gmail.com'); scenario 1: [ {id:1, email: 'xyz@gmail.com', value: 10, name: 'ram'}, {id:2, email: 'xyz@gmail.com', value: 20, name: 'Tom'} ] scenario 2: getList('Chris'); [ {id:4, email: 'ct@gmail.com', value: 40, name: 'Chris'} ]
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Su función Array.filter debería devolver true o false según los criterios de búsqueda.

Object.values devuelve un Array como salida. Para verificar si un valor está en una matriz, puede usar Array.includes .

Debe comprobar el valor con Object.values(e).includes(val)

violín de trabajo

 var objarr = [ { id: 1, email: 'xyz@gmail.com', value: 10, name: 'ram' }, { id: 2, email: 'xyz@gmail.com', value: 20, name: 'Tom' }, { id: 3, email: 'ss@gmail.com', value: 30, name: 'Lucas' }, { id: 4, email: 'ct@gmail.com', value: 40, name: 'Chris' }, { id: 5, email: 'tam@gmail.com', value: 30, name: 'Lucas Tim' } ] function getList(val) { var checkdata = objarr.filter(e => { if (Object.values(e).includes(val)) { return true; } return false; }) return checkdata; } console.log(getList('xyz@gmail.com')); console.log(getList('Chris'));

Versión simplificada

 var objarr = [ { id: 1, email: 'xyz@gmail.com', value: 10, name: 'ram' }, { id: 2, email: 'xyz@gmail.com', value: 20, name: 'Tom' }, { id: 3, email: 'ss@gmail.com', value: 30, name: 'Lucas' }, { id: 4, email: 'ct@gmail.com', value: 40, name: 'Chris' }, { id: 5, email: 'tam@gmail.com', value: 30, name: 'Lucas Tim' } ] const getList = (val) => objarr.filter(e => Object.values(e).includes(val)) console.log(getList('xyz@gmail.com')); console.log(getList('Chris'));

about 4 years ago · Juan Pablo Isaza Report

0

Puede usar el filter y usar Object.values para obtener todos los valores de un objeto y luego usar some para obtener el resultado deseado.

ONE LINER

 objarr.filter((o) => Object.values(o).some((v) => v === val)); 

 var objarr = [ { id: 1, email: "xyz@gmail.com", value: 10, name: "ram" }, { id: 2, email: "xyz@gmail.com", value: 20, name: "Tom" }, { id: 3, email: "ss@gmail.com", value: 30, name: "Lucas" }, { id: 4, email: "ct@gmail.com", value: 40, name: "Chris" }, { id: 5, email: "tam@gmail.com", value: 30, name: "Lucas Tim" }, ]; const getList = val => objarr.filter((o) => Object.values(o).some(v => v === val)); console.log(getList("xyz@gmail.com")); console.log(getList("Chris"));
 /* This is not a part of answer. It is just to give the output full height. So IGNORE IT */ .as-console-wrapper { max-height: 100% !important; top: 0; }

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!