add-query-parameters.js 529 B

1234567891011121314151617
  1. export function addQueryParameters(url, parameters) {
  2. const separator = /\?/.test(url) ? "&" : "?";
  3. const names = Object.keys(parameters);
  4. if (names.length === 0) {
  5. return url;
  6. }
  7. return (url +
  8. separator +
  9. names
  10. .map((name) => {
  11. if (name === "q") {
  12. return ("q=" + parameters.q.split("+").map(encodeURIComponent).join("+"));
  13. }
  14. return `${name}=${encodeURIComponent(parameters[name])}`;
  15. })
  16. .join("&"));
  17. }