1.0.0 • Published 7 years ago

object-defaults v1.0.0

Weekly downloads
762
License
MIT
Repository
github
Last release
7 years ago

simulator npm travis

Like _.defaults, assigns properties of source objects to a target, without overriding existing ones.

Install

$ npm install --save object-defaults

Usage

var defaults = require('object-defaults')

// copies source to target
defaults({ foo: 0 }, { bar: 1 })
//=> { foo: 0, bar: 1 }

// multiple sources
defaults({ foo: 0 }, { bar: 1 }, { baz: 2 })
//=> { foo: 0, bar: 1, baz: 2 }

// does not override existing properties
defaults({ foo: 0 }, { foo: 1 }, { foo: 2 })
//=> { foo: 0 }

// ignores falsy sources
defaults({ foo: 0 }, null, '', { bar: 1 }, 0)
//=> { foo: 0, bar: 1 }

defaults(target, [source], [source, ...])

Assigns own enumerable properties of source objects to the target object and returns the target object. Existing properties are not overriden.

Related

License

MIT © Nicolas Gryman