Bump to v3.7.0.

This commit is contained in:
jdalton
2015-04-15 20:56:31 -07:00
parent 801ffd8adf
commit 5eb8db31d7
121 changed files with 897 additions and 413 deletions

41
internal/assignWith.js Normal file
View File

@@ -0,0 +1,41 @@
import getSymbols from './getSymbols';
import keys from '../object/keys';
/** Used for native method references. */
var arrayProto = Array.prototype;
/** Native method references. */
var push = arrayProto.push;
/**
* A specialized version of `_.assign` for customizing assigned values without
* support for argument juggling, multiple sources, and `this` binding `customizer`
* functions.
*
* @private
* @param {Object} object The destination object.
* @param {Object} source The source object.
* @param {Function} customizer The function to customize assigned values.
* @returns {Object} Returns `object`.
*/
function assignWith(object, source, customizer) {
var props = keys(source);
push.apply(props, getSymbols(source));
var index = -1,
length = props.length;
while (++index < length) {
var key = props[index],
value = object[key],
result = customizer(value, source[key], key, object, source);
if ((result === result ? (result !== value) : (value === value)) ||
(value === undefined && !(key in object))) {
object[key] = result;
}
}
return object;
}
export default assignWith;