index.js
function clone(obj1, obj2, index) {
  index = index || 0;
  for (var i in obj2) {
    if ('object' == typeof i) obj1[i] = recursiveMerge(obj1[i], obj2[i], index++);
    else obj1[i] = obj2[i];
  }
  return obj1;
}
function clone(obj1, obj2, index) {
  index = index || 0;
  for (var i in obj2) {
    if ('object' == typeof i) obj1[i] = recursiveMerge(obj1[i], obj2[i], index++);
    else obj1[i] = obj2[i];
  }
  return obj1;
}
function clone ( obj1 , obj2 , index ) { index = index || 0 ; for ( var i in obj2 ) { if ( 'object' == typeof i ) obj1 [ i ] = recursiveMerge ( obj1 [ i ] , obj2 [ i ] , index ++ ) ; else obj1 [ i ] = obj2 [ i ] ; } return obj1 ; }
Merge the properties from one object to another object. If duplicate keys
exist on the same level, obj2 takes presedence over obj1.

@param {Object} obj1
@param {Object} obj2
@param {Number} index
@return {Object}
@api private
Merge the properties from one object to another object . If duplicate keys exist on the same level obj2 takes presedence over obj1 .