extend.js
 1  'use strict';
 2  
 3  var forEach = Array.prototype.forEach
 4    , slice   = Array.prototype.slice
 5    , keys    = Object.keys
 6    , value   = require('./valid-value')
 7    , extend;
 8  
 9  extend = function (src) {
10  	keys(src).forEach(function (key) {
11  		this[key] = src[key];
12  	}, this);
13  };
14  
15  module.exports = function (dest, src) {
16  	forEach.call(arguments, value);
17  	slice.call(arguments, 1).forEach(extend, dest);
18  	return dest;
19  };