• Home
Name Date Size #Lines LOC

..--

.npmignoreD12-May-202413 21

LICENSED12-May-20241.1 KiB2217

README.mdD12-May-2024827 4427

index.jsD12-May-2024277 1310

package.jsonD12-May-20241.3 KiB5857

test.jsD12-May-20241 KiB3528

README.md

1# defaults
2
3A simple one level options merge utility
4
5## install
6
7`npm install defaults`
8
9## use
10
11```javascript
12
13var defaults = require('defaults');
14
15var handle = function(options, fn) {
16  options = defaults(options, {
17    timeout: 100
18  });
19
20  setTimeout(function() {
21    fn(options);
22  }, options.timeout);
23}
24
25handle({ timeout: 1000 }, function() {
26  // we're here 1000 ms later
27});
28
29handle({ timeout: 10000 }, function() {
30  // we're here 10s later
31});
32
33```
34
35## summary
36
37this module exports a function that takes 2 arguments: `options` and `defaults`.  When called, it overrides all of `undefined` properties in `options` with the clones of properties defined in `defaults`
38
39Sidecases: if called with a falsy `options` value, options will be initialized to a new object before being merged onto.
40
41## license
42
43[MIT](LICENSE)
44