To remove a query string from a URL in JavaScript:

  1. Use the URL() constructor to convert the URL string into an object instance.
  2. Set the search and hash properties of the object instance to an empty string ''.
  3. Use the toString() method to get the modified URL.
let url = `https://example.com?size=M&size=XL&price=29&sort=desc#clicked`

const obj = new URL(url)
obj.search = ''
obj.hash = ''

url = obj.toString()
console.log(url)
// https://example.com/

The URL object is used to parse, construct, normalize, and encode URLs in JavaScript. It provides static methods and properties to read and modify different components of the URL.

Alternatively, you could also use the split() method to split the string on a question mark and access the array element at index 0:

let url = `https://example.com?size=M&size=XL&price=29&sort=desc#clicked`

url = url.split('?')[0]
console.log(url)
// https://example.com

In case there is no query string present in the URL, and the URL only contains a hash, use the following approach instead:

let url = `https://example.com#clicked`

url = url.split(/[?#]/)[0]
console.log(url)
// https://example.com

✌️ Like this article? Follow me on Twitter and LinkedIn. You can also subscribe to RSS Feed.