Traté de resolver este problema ( Comparar elementos de una matriz de objetos en JS ) y no entiendo por qué esto no funciona:
var same = [ {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'} ]; var notSame = [ {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'} ]; function allSameFloor(a){ const firstFloor = a[0].floor return a.every((item)=>{ item.floor === firstFloor }) } console.log(allSameFloor(notSame)) // false as expected console.log(allSameFloor(same)) // <-- false ??? expected trueFalta un retorno en el retorno de la función.
var same = [ {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'} ]; var notSame = [ {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'} ]; function allSameFloor(a){ const firstFloor = a[0].floor return a.every((item)=>{ return item.floor === firstFloor }) } console.log(allSameFloor(notSame)) // false as expected console.log(allSameFloor(same)) // <-- false ??? expected true