mirror of
https://github.com/whoisclebs/lodash.git
synced 2026-02-12 03:47:50 +00:00
Let createAssigner get correct customizer
When `_.defaults` is invoked using `_.reduce` / `_.reduceRight`
`createAssigner` discards the customizer, so the effect is
`_.assign` but not `_.defaults`
```
_.reduce([{ 'user': 'barney' }, { 'user': 'fred' }], _.defaults)
// -> {user: "fred"}
_.reduceRight([{ 'user': 'barney' }, { 'user': 'fred' }], _.defaults)
// -> {user: "barney"}
// Fixed
_.reduce([{ 'user': 'barney' }, { 'user': 'fred' }], _.defaults)
// -> {user: "barney"}
_.reduceRight([{ 'user': 'barney' }, { 'user': 'fred' }], _.defaults)
// -> {user: "fred"}
```
This commit is contained in:
@@ -3167,6 +3167,9 @@
|
|||||||
return object;
|
return object;
|
||||||
}
|
}
|
||||||
if (length > 3 && isIterateeCall(arguments[1], arguments[2], arguments[3])) {
|
if (length > 3 && isIterateeCall(arguments[1], arguments[2], arguments[3])) {
|
||||||
|
if (typeof arguments[length - 1] == 'function') {
|
||||||
|
customizer = arguments[--length];
|
||||||
|
}
|
||||||
length = 2;
|
length = 2;
|
||||||
}
|
}
|
||||||
// Juggle arguments.
|
// Juggle arguments.
|
||||||
|
|||||||
Reference in New Issue
Block a user