code: function createParams(routePattern, fragment, queryString) {
              var params = routePattern.exec(fragment).slice(1);
  
              for (var i = 0; i < params.length; i++) {
                  var current = params[i];
                  params[i] = current ? decodeURIComponent(current) : null;
              }
  
              var queryParams = router.parseQueryString(queryString);
              if (queryParams) {
                  params.push(queryParams);
              }
  
              return {
                  params:params,
                  queryParams:queryParams
              };
          }
docs: Given a route, and a URL fragment that it matches, return the array of extracted decoded parameters. Empty or unmatched parameters will be treated as `null` to normalize cross-browser behavior.