1 | var keys = require('./keys')
|
2 |
|
3 | var slice = require('./slice')
|
4 | var includes = require('./includes')
|
5 | var arrayEach = require('./arrayEach')
|
6 |
|
7 | var assign = require('./assign')
|
8 |
|
9 |
|
10 |
|
11 |
|
12 |
|
13 |
|
14 |
|
15 |
|
16 | function destructuring (destination, sources) {
|
17 | if (destination && sources) {
|
18 | var rest = assign.apply(this, [{}].concat(slice(arguments, 1)))
|
19 | var restKeys = keys(rest)
|
20 | arrayEach(keys(destination), function (key) {
|
21 | if (includes(restKeys, key)) {
|
22 | destination[key] = rest[key]
|
23 | }
|
24 | })
|
25 | }
|
26 | return destination
|
27 | }
|
28 |
|
29 | module.exports = destructuring
|