Skip to content

Instantly share code, notes, and snippets.

@djKianoosh
Last active December 26, 2015 03:59
Show Gist options
  • Save djKianoosh/7090373 to your computer and use it in GitHub Desktop.
Save djKianoosh/7090373 to your computer and use it in GitHub Desktop.
Underscore mixin to merge objects; last item takes precedence (uses _.extend not _.default)
/**
* Underscore mixin to merge objects; last item takes precedence (uses _.extend not _.default)
**/
_.mixin({
merge : function() {
return _.reduce(arguments, function(list, obj){
return _.extend(list, obj);
}, {});
}
});
_.merge({a: 1}, {b: 2}); // returns {a: 1, b: 2}
_.merge({a: 1, b: 1}, {b: 2}); // returns {a: 1, b: 2}
_.merge({a: 1, b: 1}, {a: 2}); // returns {a: 2, b: 1}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment