diff options
| author | nanalelfe <nargiza.nosirova@mail.utoronto.ca> | 2016-07-21 23:25:55 +0000 |
|---|---|---|
| committer | nanalelfe <nargiza.nosirova@mail.utoronto.ca> | 2016-07-21 23:25:55 +0000 |
| commit | dc3888553bdda4ee30e6440992459916cec8d911 (patch) | |
| tree | 3103577d8ca32f798e88468da305e26ff260bf5b /node_modules/mongodb/lib/utils.js | |
| parent | 39ef1b6fd37bb9b725676d3a98f13e3450798200 (diff) | |
Need pull
Diffstat (limited to 'node_modules/mongodb/lib/utils.js')
| -rw-r--r-- | node_modules/mongodb/lib/utils.js | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/node_modules/mongodb/lib/utils.js b/node_modules/mongodb/lib/utils.js index 0b649b8..066269d 100644 --- a/node_modules/mongodb/lib/utils.js +++ b/node_modules/mongodb/lib/utils.js @@ -269,6 +269,31 @@ var filterOptions = function(options, names) { return filterOptions; } +// Object.assign method or polyfille +var assign = Object.assign ? Object.assign : function assign(target, firstSource) { + if (target === undefined || target === null) { + throw new TypeError('Cannot convert first argument to object'); + } + + var to = Object(target); + for (var i = 1; i < arguments.length; i++) { + var nextSource = arguments[i]; + if (nextSource === undefined || nextSource === null) { + continue; + } + + var keysArray = Object.keys(Object(nextSource)); + for (var nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex++) { + var nextKey = keysArray[nextIndex]; + var desc = Object.getOwnPropertyDescriptor(nextSource, nextKey); + if (desc !== undefined && desc.enumerable) { + to[nextKey] = nextSource[nextKey]; + } + } + } + return to; +} + exports.filterOptions = filterOptions; exports.mergeOptions = mergeOptions; exports.translateOptions = translateOptions; @@ -284,3 +309,4 @@ exports.decorateCommand = decorateCommand; exports.isObject = isObject; exports.debugOptions = debugOptions; exports.MAX_JS_INT = 0x20000000000000; +exports.assign = assign; |
