¿Tengo que verificar si un objeto tiene una propiedad específica cuando, por ejemplo, uso un bucle for para acceder a él como:
for(var i = 0; i<array.length< i++) { console.log(array1[i].propertyName) } Si los objetos almacenados en la matriz difieren en que algunos tienen la propiedad específica y otros no. ¿Debería verificarlo primero con obj.hasOwnProperty(prop) o de todos modos devuelve indefinido sin ningún conflicto?
Puede verificar si la propiedad existe con una declaración if simple. Como señaló VLAZ, una propiedad faltante devolverá undefined que en JavaScript es equivalente a false (ey). Así que podrías hacer:
for(var i = 0; i<array.length< i++) { //Will return false if the property doesn't exist if(array1[i].properyName != undefined) { console.log(array1[i].propertyName) } }