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

147
Views
Compara elementos de una matriz de objetos en JS

Estoy trabajando en una matriz que es así:

 var arr = [ {floor: '1', id: '10165', label: 'Elutuba/Köök'}, {floor: '1', id: '10166', label: 'Tuba 1'}, {floor: '1', id: '10167', label: 'Vannituba'}, {floor: '2', id: '10167', label: 'Vannituba'} ];

Ahora quiero comparar los elementos del piso aquí. Si todo el valor mínimo es el mismo, entonces debería devolver true y si hay varios valores como '1' y '2' en esta matriz, debería devolver false .

Esto es lo que he intentado hasta ahora

 var arr = [ {floor: '1', id: '10165', label: 'Elutuba/Köök'}, {floor: '1', id: '10166', label: 'Tuba 1'}, {floor: '1', id: '10167', label: 'Vannituba'}, {floor: '2', id: '10167', label: 'Vannituba'} ]; for (let i=0; i< arr.length; i++){ for (let j=1; j< arr.length; j++){ if( arr[i].floor !== arr[j].floor){ console.log('found'); }else{ console.log('Not found'); } } }

Sé que esto no está cerca de la solución. Pero estoy atascado.

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

0

Una primera aproximación ingenua.

  • convertir el cheque en una función para que pueda ser reutilizado
  • extraiga la propiedad del floor del primer elemento usando la asignación de Destructuring y cámbiele el nombre a firstFloor
  • Use Array.prototype.every() para verificar si todos los elementos cumplen con ciertos criterios

 const allSameFloors = (array = []) => { const [{ floor: firstFloor }] = array; return array.every(({ floor }) => floor === firstFloor); }; console.log( allSameFloors( [{ floor: '1', id: '10165', label: 'Elutuba/Köök' }, { floor: '1', id: '10166', label: 'Tuba 1' }, { floor: '1', id: '10167', label: 'Vannituba' }, { floor: '2', id: '10167', label: 'Vannituba' } ] ) ); console.log( allSameFloors( [{ floor: '1', id: '10165', label: 'Elutuba/Köök' }, { floor: '1', id: '10166', label: 'Tuba 1' }, { floor: '1', id: '10167', label: 'Vannituba' }, { floor: '1', id: '10167', label: 'Vannituba' } ] ) );

about 4 years ago · Juan Pablo Isaza Report

0

Lo más probable es que haya una mejor manera de hacerlo, pero aquí hay una solución rápida.

 function FloorSameValue(arr){ values = []; for (obj of arr){ if (!values.includes(obj.floor)){ values.push(obj.floor); } } return values.length === 1; } var arr = [ {floor: '1', id: '10165', label: 'Elutuba/Köök'}, {floor: '1', id: '10166', label: 'Tuba 1'}, {floor: '1', id: '10167', label: 'Vannituba'}, {floor: '2', id: '10167', label: 'Vannituba'} ]; console.log(FloorSameValue(arr)) //false

about 4 years ago · Juan Pablo Isaza Report

0

for( var i = 0 ; i < arr.length;i++) { var myval = arr[i].floor; for (var j = i+1 ; j < arr.length ; j++) { if (arr[i].floor !== arr[j].floor) { alert("false"); } } } enter code here
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!