VOOZH about

URL: https://www.geeksforgeeks.org/node-js/node-js-urlsearchparams-api/

⇱ Node.js URLsearchParams API - GeeksforGeeks


  • Courses
  • Tutorials
  • Interview Prep

Node.js URLsearchParams API

Last Updated : 10 Jul, 2020
Node.js is an open-source project widely used for the development of dynamic web applications. The URLSearchParams API in Node.js allows read and write operations on the URL query. The URLSearchParams class is a global object and used with one of the four following constructors. Constructors:
  1. new URLSearchParams(): No argument constructor instantiates a new empty URLSearchParams object.
  2. new URLSearchParams(string): Accepts a string as an argument to instantiate a new URLSearchParams object. Output:
    abc
    xyz
  3. new URLSearchParams(obj): Accepts an object with a collection of key-value pairs to instantiate a new URLSearchParams object. The key-value pair of obj are always coerced to strings. Duplicate keys are not allowed. Output:
    user=ana&course=math%2Cchem%2Cphys
  4. new URLSearchParams(iterable): Accepts an iterable object having a collection of key-value pairs to instantiate a new URLSearchParams object. Iterable can be any iterable object. Since URLSearchParams is iterable, an iterable object can be another URLSearchParams, where the constructor will create a clone of the provided URLSearchParams. Duplicate keys are allowed. Output:
    West+Bengal=Kolkata&Karnataka=Bengaluru
Accessing the URL query:
  • urlSearchParams.get(name): Returns the value of the first name-value pair that matches with the argument passed. If no such pair exists, null is returned. Output:
    123
  • urlSearchParams.getAll(name): Returns all the value of the name-value pair that matches with the argument passed. If no such pair exists, null is returned. Output:
    [ '123', '526' ]
  • urlSearchParams.has(name): Returns true if the argument passed matches with any existing name of the name-value pair else returns false. Output:
    true
    false
Manipulating the URL query:
  • urlSearchParams.set(name, value): Sets the value in the URLSearchParams object associated with name to the specified value. If more than one name-value pairs exists, whose names are same as the 'name' argument, then the only value of first matching pair is changed, rest all are removed. Output:
    abc=123&xyz=526&abc=258
    abc=opq&xyz=526
  • urlSearchParams.append(name, value): Appends a new name-value pair to the existing URLSearchParams query. Output:
    xyz=123&foo=789&xyz=zoo&foo=def
  • urlSearchParams.delete(name): Removes all name-value pairs whose name is same as 'name' argument. Output:
    xyz=123&foo=789&xyz=zoo&foo=def
    xyz=123&xyz=zoo
  • urlSearchParams.sort(): Sorts the existing name-value pairs in-place by their names using a stable sorting algorithm. Output:
    abc=programs&query=node&type=search
  • urlSearchParams.toString(): Returns the URL search parameters as a string, with characters percent-encoded wherever necessary. Output:
    query=node&type=search&passwd%5B%5D=3456
Iterating the URL query:
  • urlSearchParams.entries(): Returns an iterator over the entry set of the param object. Output:
    query-->node
    type-->search
    passwd-->3456
  • urlSearchParams.keys(): Returns an iterator over the key set of the param object. Output:
    query
    type
    passwd
  • urlSearchParams.values(): Returns an iterator over the value set of the param object. Output:
    node
    search
    3456
  • urlSearchParams.forEach(fn[, arg]): fn is a function invoked for each name-value pair in the query and arg is an object to be used when 'fn' is called. It iterates over each name-value pair in the query and invokes the function. Output:
    a b true
    c d true
    d z true
  • urlSearchParams[Symbol.iterator](): Output:
    firstname john
    lastname beck
    gender male
    
Comment

Explore