The URLSearchParams() constructor creates and returns a new URLSearchParams object.

Note: This feature is available in Web Workers


var URLSearchParams = new URLSearchParams(init);


init Optional

One of:

  • USVString, which will be parsed from application/x-www-form-urlencoded format. A leading '?' character is ignored.
  • A literal sequence of name-value string pairs, or any object — such as a FormData object — with an iterator that produces a sequence of string pairs. Note that that File entries will be serialized as [object File] rather than as their filename (as they would in an application/x-www-form-urlencoded form).
  • A record of USVString keys and USVString values.

Return value

A URLSearchParams object instance.


The following example shows how to create a URLSearchParams object from a URL string.

// Retrieve params via url.search, passed into ctor
var url = new URL('https://example.com?foo=1&bar=2');
var params = new URLSearchParams(url.search);

// Pass in a string literal
var params2 = new URLSearchParams("foo=1&bar=2");
var params2a = new URLSearchParams("?foo=1&bar=2");

// Pass in a sequence of pairs
var params3 = new URLSearchParams([["foo", "1"], ["bar", "2"]]);

// Pass in a record
var params4 = new URLSearchParams({"foo": "1", "bar": "2"});


URL Standard (URL)
# dom-urlsearchparams-urlsearchparams

Browser compatibility

BCD tables only load in the browser