ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
## assignInWith extendWith + [link](./assignInWith "Link to this entry.") + [source](https://github.com/lodash/lodash/blob/4.5.0正式版/lodash.src.js#L10767 "View in source.") + [npm](https://www.npmjs.com/package/lodash.assigninwith "See the npm package.") ``` _.assignInWith(object, sources, [customizer]) ``` 这个方法类似 `_.assignIn`。 除了它接受一个 customizer`决定如何分配值。 如果`customizer`返回`undefined`将会由分配处理方法代替。`customizer` 会传入5个参数:(objValue, srcValue, key, object, source)。 **注意:** 这方法会改变源对象 ### 参数 1. object (Object) 目标对象 2. sources (...Object) 来源对象 3. [customizer] (Function) 这个函数决定分配的值 ### 返回值 (Object) 返回对象 ### 示例 ``` function customizer(objValue, srcValue) { return _.isUndefined(objValue) ? srcValue : objValue; } var defaults = _.partialRight(_.assignInWith, customizer); defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); // => { 'a': 1, 'b': 2 } ```