Estoy usando el filtro para encontrar la identificación en data.it el objeto devuelto no es verdadero o falso. ¿Cómo puedo devolver verdadero o falso si val.recoredId === valueId?

 var hasMatch = data.filter(function (val) {
            return (val.recordId === valueId);                               
        });
1
NinjaDeveloper 10 may. 2016 a las 17:27

4 respuestas

La mejor respuesta

Usa find

 hasMatch = data.find(function (value) {return value.recordId == valueId });
4
user5211381user5211381 10 may. 2016 a las 15:10

Solo verifique la longitud de los resultados filtrados

    var hasMatch = data.filter(function (val) {
        return (val.recordId === valueId);                               
    }).length > 0;
15
gurvinder372 10 may. 2016 a las 14:29

Si bien llamar al filtro con longitud agregada resuelve esto, le diría que some() método

hasMatch = data.some(function (value) {
   return value.recordId == valueId
});

Esto devolverá un valor booleano si la matriz contiene entradas value.recordId == valueId coincidentes

0
JeffBeltran 2 dic. 2019 a las 14:55

Probar esto

var hasMatch = data.filter(function (val) {
    return !!(val.recordId === valueId);                               
});
0
Sapotero 10 may. 2016 a las 14:28