JSFiddle - React, Tailwind, and code Playground

by francisfortier

JavaScript

var pathParams = {
  id: 123,
  a: 333
};
var queryParams = {
  a: 2,
  b: 3
}

var path = '/{id}/{a}?a&b'
  .replace(/\{(.+?)\}/g, (m, key) => encodeURIComponent(pathParams[key]))
  .replace(/([\?&])([^&]+)/g, (m, delimiter, key) => key in queryParams ? delimiter + key + '=' + encodeURIComponent(queryParams[key]) : '')
  .replace(/[\?&]/, '?');

alert(path)