Chcę zasadniczo zaktualizować dużąobiekt javascript. Jednak różne narzędzia na froncie dodają niepotrzebne pola, które powinny być ignorowane podczas aktualizacji obiektu. Pracuję z kanciastym, ale otwartym na używanie lodash / underscore, jeśli to konieczne. Chcę tylko móc zaktualizować istniejący obiekt bez dodawania dodatkowych pól, które są wstrzykiwane po umieszczeniu w interfejsie użytkownika.
var ob1 = {
attr1: "stuff",
attr2: "stuff"
};
var ob2 = {
attr1: "changedstuff",
attr2: "stuff",
uiCrap: "junk"
};
update(ob1, ob2);
// should result in
// ob1 = { attr1: "changedstuff", attr2: "stuff };
Czy ktoś tam wie, czy istnieje wbudowana funkcja kątowa / javascript?
Odpowiedzi:
3 dla odpowiedzi № 1Użyj poszerzać() funkcjonować:
var ob = _.extend(ob1, _.pick(ob2, _.keys(ob1)));