Defina getter en objeto para que todas las búsquedas de propiedades no definidas devuelvan ""

Básicamente necesito poder hacer esto:

var obj = {"foo":"bar"},
    arr = [];
with( obj ){
   arr.push( foo );
   arr.push( notDefinedOnObj ); // fails with 'ReferenceError: notDefinedOnObj is not defined'
}
console.log(arr); // ["bar", ""] <- this is what it should be.

Estoy buscando un equivalente "global" de{}.__defineGetter__ o{obtener} para devolver una cadena vacía para todos los captadores de propiedades no definidas (tenga en cuenta que esto es diferente de una propiedad que esundefined).

Respuestas a la pregunta(4)

Su respuesta a la pregunta