code: function objMapped(callback, thisArg = UNDEFINED) {
      const dst = isArray(this) ? [] : {};
      eachProp.call(this, (value, key, src) => {
          const result = callback.call(thisArg, value, key, src);
          if (result === BREAK) return BREAK;
          if (result !== UNDEFINED) {
              dst[key] = result;
          }
      });
      return dst;
  }
docs: map function applied to objects and array's own properties not just indexed contents
  results in object or array
  
  @this        array or object
  @param callback  function(value,key,collection)
  if BREAK returned then breaks out of loop, returned BREAK value ignored
  @param thisArg what to use for this for callback
  @return {object|array} depending on this passed on call