Angularjs mescla dois objetos

Por exemplo, desses dois objetos:

var object1 = {
  "color": "yellow",
  "size": null,
  "age": 7,
  "weight": null
}

var object2 = {
  "color": "blue",
  "size": 51,
  "age": null
}

Eu quero isso (object2 substituiçõesobject1 exceto pornull propriedades ou propriedades que ele não possui):

{
  "color": "blue",
  "size": 51,
  "age": 7,
  "weight": null
}

questionAnswers(3)

yourAnswerToTheQuestion