I'm trying to use an array.some function to iterate through some data and return my field if the if statement succeeds.
What I am finding is happening instead, is that I am getting a boolean return e.g true instead of the actual variable (which contains details to an element).
for (var index in allFields) {
const invalidField = allFields[index].some(function (field){
if (!validation.getIn([index,field.dataset.fieldKey,'isValid'])) {
return field;
}
});
if (invalidField) {
return invalidField;
}
}
My code cycles through allFields, which contains lists of fields under indexes. It then compares each fieldKey with another set of data called validation.
field contains an element. I wish to return field but instead when I check invalidField I get true instead of the element
Array.prototype.some() only checks if any element in the array passes test defined in callback function. You should use array find method which returns first element passig test
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With