code: function initCloneByTag$1(object, tag, cloneFunc, isDeep) {
    var Ctor = object.constructor;
    switch (tag) {
      case arrayBufferTag$2:
        return cloneArrayBuffer(object);
  
      case boolTag$2:
      case dateTag$2:
        return new Ctor(+object);
  
      case dataViewTag$3:
        return cloneDataView(object, isDeep);
  
      case float32Tag$2:case float64Tag$2:
      case int8Tag$2:case int16Tag$2:case int32Tag$2:
      case uint8Tag$2:case uint8ClampedTag$2:case uint16Tag$2:case uint32Tag$2:
        return cloneTypedArray(object, isDeep);
  
      case mapTag$3:
        return cloneMap(object, isDeep, cloneFunc);
  
      case numberTag$2:
      case stringTag$2:
        return new Ctor(object);
  
      case regexpTag$2:
        return cloneRegExp(object);
  
      case setTag$3:
        return cloneSet(object, isDeep, cloneFunc);
  
      case symbolTag$1:
        return cloneSymbol(object);
    }
  }
docs: Initializes an object clone based on its `toStringTag`.
  
  **Note:** This function only supports cloning values with tags of
  `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.
  
  @private
  @param {Object} object The object to clone.
  @param {string} tag The `toStringTag` of the object to clone.
  @param {Function} cloneFunc The function to clone values.
  @param {boolean} [isDeep] Specify a deep clone.
  @returns {Object} Returns the initialized clone.