Есть 2 объекта:
var a = {
a: 1,
b: 2,
c: 3
}
var b = {
a: 4,
c: 0,
d: 10
}
Нужно значениями из объекта b заменить значения объекта a, при этом не добавляя новых переменных в объект, если их не существует.
Должно получиться:
c = {
a: 4, // изменился так, как есть b.a
b: 2, // не изменился так, как нет b.b
c: 0 // изменился так, как есть b.c
// d: 10 не добавилось так, как нет a.d
}
У меня пока есть решение:
objects = function (a,b) {
var c = {};
for (var i in a) {
c[i] = typeof b[i] != 'undefined' ? b[i] : a[i];
}
return c;
}
Но может есть какой-то встроенный метод?