Blame view

node_modules/es5-ext/object/assign/shim.js 483 Bytes
f7563de62   Palak Handa   first commit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
  'use strict';
  
  var keys  = require('../keys')
    , value = require('../valid-value')
  
    , max = Math.max;
  
  module.exports = function (dest, src/*, …srcn*/) {
  	var error, i, l = max(arguments.length, 2), assign;
  	dest = Object(value(dest));
  	assign = function (key) {
  		try { dest[key] = src[key]; } catch (e) {
  			if (!error) error = e;
  		}
  	};
  	for (i = 1; i < l; ++i) {
  		src = arguments[i];
  		keys(src).forEach(assign);
  	}
  	if (error !== undefined) throw error;
  	return dest;
  };