Use _.extend instead of the hand-rolled merge
This commit is contained in:
parent
8c077f0f65
commit
dd6be80fca
|
@ -25,24 +25,11 @@
|
||||||
return memo;
|
return memo;
|
||||||
};
|
};
|
||||||
// Merge objects.
|
// Merge objects.
|
||||||
merge = function merge(src, dest) {
|
merge = function merge(options, overrides) {
|
||||||
var __a, __b, fresh, key, val;
|
return _.tap({}, function(fresh) {
|
||||||
fresh = {};
|
_.extend(fresh, options);
|
||||||
__a = src;
|
return _.extend(fresh, overrides);
|
||||||
for (key in __a) {
|
});
|
||||||
val = __a[key];
|
|
||||||
if (__hasProp.call(__a, key)) {
|
|
||||||
((fresh[key] = val));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
__b = dest;
|
|
||||||
for (key in __b) {
|
|
||||||
val = __b[key];
|
|
||||||
if (__hasProp.call(__b, key)) {
|
|
||||||
((fresh[key] = val));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return fresh;
|
|
||||||
};
|
};
|
||||||
// Delete a key from an object, returning the value.
|
// Delete a key from an object, returning the value.
|
||||||
del = function del(obj, key) {
|
del = function del(obj, key) {
|
||||||
|
|
|
@ -20,11 +20,10 @@ flatten: (list) ->
|
||||||
memo
|
memo
|
||||||
|
|
||||||
# Merge objects.
|
# Merge objects.
|
||||||
merge: (src, dest) ->
|
merge: (options, overrides) ->
|
||||||
fresh: {}
|
_.tap {}, (fresh) ->
|
||||||
(fresh[key]: val) for key, val of src
|
_.extend fresh, options
|
||||||
(fresh[key]: val) for key, val of dest
|
_.extend fresh, overrides
|
||||||
fresh
|
|
||||||
|
|
||||||
# Delete a key from an object, returning the value.
|
# Delete a key from an object, returning the value.
|
||||||
del: (obj, key) ->
|
del: (obj, key) ->
|
||||||
|
|
Loading…
Reference in New Issue