index.js
function cloneArgs(args) {
    var newArgs = {};
    for(var key in args){
      if (key && args.hasOwnProperty(key)) {
        newArgs[key] = args[key];
      }
    }
    newArgs.isCacheableValue = args.isCacheableValue && args.isCacheableValue.bind(newArgs);
    return newArgs;
  }
function cloneArgs(args) {
    var newArgs = {};
    for(var key in args){
      if (key && args.hasOwnProperty(key)) {
        newArgs[key] = args[key];
      }
    }
    newArgs.isCacheableValue = args.isCacheableValue && args.isCacheableValue.bind(newArgs);
    return newArgs;
  }
function cloneArgs ( args ) { var newArgs = { } ; for ( var key in args ) { if ( key && args . hasOwnProperty ( key ) ) { newArgs [ key ] = args [ key ] ; } } newArgs . isCacheableValue = args . isCacheableValue && args . isCacheableValue . bind ( newArgs ) ; return newArgs ; }
Clones args'es own properties to a new object and sets isCacheableValue on the new object
@param  {Object} args
@returns {Object} a clone of the args object
Clones args es own properties to a new object and sets isCacheableValue on the new object