code: function parse(str, del, eq) {
      if (!str) return {};
  
      var out = {}
        , s = str.split(del || '&')
        , l = s.length
        , i = 0
        , $;
  
      for (; i < l; i++) {
        $ = s[i].split(eq || '=');
        if ($[0]) {
          $[0] = unescape($[0]);
          $[1] = $[1] ? unescape($[1]) : '';
          parse.set(out, $[0], $[1]);
        }
      }
  
      return out;
    }
docs: Nested QS Parser
  From: Parted, Copyright (c) 2011-2012, Christopher Jeffrey
  https://github.com/chjj/parted