Given:
var peoples = [
{ \"attr1\": \"bob\", \"attr2\": \"pizza\" },
{ \"attr1\": \"john\", \"attr2\": \"sushi\" },
{ \"attr1\": \"lar
If you want to check on the object itself without interfering with the prototype, use hasOwnProperty():
var getIndexIfObjWithOwnAttr = function(array, attr, value) {
for(var i = 0; i < array.length; i++) {
if(array[i].hasOwnProperty(attr) && array[i][attr] === value) {
return i;
}
}
return -1;
}
to also include prototype attributes, use:
var getIndexIfObjWithAttr = function(array, attr, value) {
for(var i = 0; i < array.length; i++) {
if(array[i][attr] === value) {
return i;
}
}
return -1;
}