The URLSearchParams
interface defines utility methods to work with the query string of a URL.
An object implementing URLSearchParams
can directly be used in a for...of
structure, instead of entries()
: for (var p of mySearchParams)
is equivalent to for (var p of mySearchParams.entries())
.
Constructor
URLSearchParams()
- Constructor returning a
URLSearchParams
object.
Properties
This interface doesn't inherit any properties.
Methods
This interface doesn't inherit any methods.
URLSearchParams.append()
- Appends a specified key/value pair as a new search parameter.
URLSearchParams.delete()
- Deletes the given search parameter, and its associated value, from the list of all search parameters.
URLSearchParams.entries()
- Returns an
iterator
allowing to go through all key/value pairs contained in this object. URLSearchParams.get()
- Returns the first value associated to the given search parameter.
URLSearchParams.getAll()
- Returns all the values association with a given search parameter.
URLSearchParams.has()
- Returns a
Boolean
indicating if such a search parameter exists. URLSearchParams.keys()
- Returns an
iterator
allowing to go through all keys of the key/value pairs contained in this object. URLSearchParams.set()
- Sets the value associated to a given search parameter to the given value. If there were several values, delete the others.
URLSearchParams.sort()
- Sorts all key/value pairs, if any, by their keys.
URLSearchParams.toString()
- Returns a string containing a query string suitable for use in a URL.
URLSearchParams.values()
- Returns an
iterator
allowing to go through all values of the key/value pairs contained in this object.
Example
var paramsString = "q=URLUtils.searchParams&topic=api" var searchParams = new URLSearchParams(paramsString); //Iterate the search parameters. for (let p of searchParams) { console.log(p); } searchParams.has("topic") === true; // true searchParams.get("topic") === "api"; // true searchParams.getAll("topic"); // ["api"] searchParams.get("foo") === null; // true searchParams.append("topic", "webdev"); searchParams.toString(); // "q=URLUtils.searchParams&topic=api&topic=webdev" searchParams.set("topic", "More webdev"); searchParams.toString(); // "q=URLUtils.searchParams&topic=More+webdev" searchParams.delete("topic"); searchParams.toString(); // "q=URLUtils.searchParams"
Specifications
Specification | Status | Comment |
---|---|---|
URL The definition of 'URLSearchParams' in that specification. |
Living Standard | Initial definition. |
Browser compatibility
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | 49 | 29.0 (29.0) | No support | 36 | 10.1 |
entries() , keys() , values() , and support of for...of |
49 | 44.0 (44.0) | No support | 36 | ? |
USVString for constructor init object |
(Yes) | 53.0 (53.0) | No support | (Yes) | ? |
Record for constructor init object |
No support | 54.0 (54.0) | No support | ? | ? |
Feature | Android Webview | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | 49 | 49 | 29.0 (29.0) | No support | ? | No support |
entries() , keys() , values() , and support of for...of |
49 | 49 | 44.0 (44.0) | No support | ? | No support |
USVString for constructor init object |
(Yes) | (Yes) | 53.0 (53.0) | No support | ? | ? |
Record for constructor init object |
? | ? | 54.0 (54.0) | No support | ? | ? |
See also
- Other URL-related interfaces:
URL
,URLUtils
. - Google Developers: Easy URL manipulation with URLSearchParams
Document Tags and Contributors
Tags:
Contributors to this page:
HarrySarson,
NoInkling,
jpmedley,
stevenvachon,
sudowork,
chrisdavidmills,
David_Gilbertson,
teoli,
cuixiping,
Ms2ger,
Gheoan,
evilpie,
draco,
ebidel,
kscarfone,
Noitidart,
Jxck,
mnoorenberghe,
baku
Last updated by:
HarrySarson,