Matriz dada: matriz const = [{1: verdadero},{2: falso},{3: verdadero},{}.....];
Filtre la matriz dada incluyendo solo objetos con valores de verdadero.
Buscando la solución más corta.
const onlyTrue = array.filter((el, ind) => el[ind + 1] === true);Esto funcionará solo si los índices en los objetos de matriz están ordenados y comienzan desde 1, como en su ejemplo.
Suposiciones (basadas en lo que hay en su ejemplo):
const array = [{1: true},{2: false},{3: true}]; const results = array.filter(item => Object.values(item)[0]);Si desea evitar falsos positivos de valores de verdad (consulte https://developer.mozilla.org/en-US/docs/Glossary/Truthy ), cambie la llamada de filtro a esto:
const results = array.filter(item => Object.values(item)[0] === true);const array = [{1: true},{2: false},{3: true}]; const array2 = []; array.forEach(filterTrue); function filterTrue(item){ for(x in item){ if(item[x]===true){ array2.push(item); } } } console.log(array2); Hope this helps you.