Reemplace el valor del objeto con el valor de otro objeto de la misma clave con JavaScript

Tengo dos objetositem yresults. Ambos tienen las mismas claves pero posiblemente valores diferentes, por ejemplo:

item.id = '50'
item.area = 'Mexico'
item.gender = null
item.birthdate = null

results.id = '50'
results.area = null
results.gender = 'Male' 
results.birthdate = null

Lo que quiero hacer es exactamente lo siguiente:

if (item.id == null || items.id == 0)
{
    item.id = results.id;
}

pero estoy buscando una manera de hacer esto para cada valor de miitem objeto. Ya sabes, sin tener que escribir una función enorme si mis objetos tienen muchas más claves / valores. ¿Algunas ideas?

Actualización: Entendí mal mi propio problema y el único problema era que realmente no entendía cómo obtener un valor de objeto dada una determinada clave. Realmente no podría usar ningún script externo o divs ya que estoy usando los scripts de servicio móvil de Azure.

for (var key in item) {
    if(item[key] == null || item[key] == 0){
        item[key] = results[0][key] 
    }             
}

Respuestas a la pregunta(4)

Su respuesta a la pregunta