This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2018.
Note: This feature is available in Web Workers.
The toString() method of the URLSearchParams interface returns a query string suitable for use in a URL.
Note: This method returns the query string without the question mark. This is different from Location.search, HTMLAnchorElement.search, and URL.search, which all include the question mark.
toString()
None.
A string, without the question mark. Returns an empty string if no search parameters have been set. Characters in the application/x-www-form-urlencoded percent-encode set (which contains all code points except ASCII alphanumeric, *, -, ., and _) are percent-encoded, and U+0020 SPACE is encoded as +.
const url = new URL("https://example.com?foo=1&bar=2");
const params = new URLSearchParams(url.search);
// Add a second foo parameter.
params.append("foo", 4);
console.log(params.toString()); // Prints 'foo=1&bar=2&foo=4'
| Specification |
|---|
| URL> # urlsearchparams-stringification-behavior> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
toString |
49 | 17 | 29 | 36 | 10.1 | 49 | 29 | 36 | 10.3 | 5.0 | 49 | 10.3 |
URL interface.
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams/toString