code: function parse(pathString) {
      var a = doc.createElement('a');
      a.href = pathString;
  
      var protocol = a.protocol;
      var domain = a.hostname;
      var port = a.port;
      var path = a.pathname;
      var search = a.search;
      var hash = a.hash;
      var host = a.host;
      var origin = a.origin;
      var dir = reDir.test(path) ? reDir.exec(path)[1] : '';
      var base = reBase.test(path) ? reBase.exec(path)[1] : '';
      var ext = reExt.test(path) ? reExt.exec(path)[1] : '';
  
      return {
        protocol  : protocol,
        domain    : domain,
        port      : port,
        host      : host,
        origin    : origin,
        path      : path,
        search    : search,
        hash      : hash,
        dir       : dir,
        base      : base,
        ext       : ext
      };
    }
docs: parse
  @param {String} pathString
  @return {Object}