defaultsDeep.js 745 B

12345678910111213141516171819202122232425
  1. var createDefaults = require('../internal/createDefaults'),
  2. merge = require('./merge'),
  3. mergeDefaults = require('../internal/mergeDefaults');
  4. /**
  5. * This method is like `_.defaults` except that it recursively assigns
  6. * default properties.
  7. *
  8. * **Note:** This method mutates `object`.
  9. *
  10. * @static
  11. * @memberOf _
  12. * @category Object
  13. * @param {Object} object The destination object.
  14. * @param {...Object} [sources] The source objects.
  15. * @returns {Object} Returns `object`.
  16. * @example
  17. *
  18. * _.defaultsDeep({ 'user': { 'name': 'barney' } }, { 'user': { 'name': 'fred', 'age': 36 } });
  19. * // => { 'user': { 'name': 'barney', 'age': 36 } }
  20. *
  21. */
  22. var defaultsDeep = createDefaults(merge, mergeDefaults);
  23. module.exports = defaultsDeep;