code: function extendObject(own, target, sources) {
    sources = slice.call(arguments, 2);
  
    var property;
    var source;
  
    for (var i = 0, length = sources.length; i < length; i++) {
      source = sources[i];
  
      for (property in source) {
        if (!own || hasOwnProperty.call(source, property)) {
          target[property] = source[property];
        }
      }
    }
  }
docs: Extends the specified <code>target</code> object with the properties in each of the <code>sources</code> provided.
  
  if any source is <code>null</code> it will be ignored.
  
  @param {boolean} own - <code>true</code> to only copy <b>own</b> properties from <code>sources</code> onto
  <code>target</code>; otherwise <code>false</code>
  @param {Object} target - the target object which should be extended
  @param {...Object} [sources] - the source objects whose properties are to be copied onto <code>target</code>
  @return {void}
  @private