Global `URLSearchParams` in Node.js allows developers to manipulate URL query parameters efficiently. This feature is incredibly useful when working with URLs in Node.js applications. `URLSearchParams` is a native JavaScript object that simplifies the process of working with query parameters in URLs.
To start using `URLSearchParams` in Node.js, you first need to require the `URL` module, which is built into Node.js. Here's an example of how you can create a new instance of `URLSearchParams`:
const { URLSearchParams } = require('url');
const params = new URLSearchParams();
Once you have created an instance of `URLSearchParams`, you can add query parameters using the `append` method. Here's how you can add parameters to the object:
const params = new URLSearchParams();
params.append('search', 'node.js');
params.append('page', '1');
You can also set query parameters directly when creating the `URLSearchParams` object by passing an object with key-value pairs to the constructor. Here's an example:
const params = new URLSearchParams({ search: 'node.js', page: '1' });
To retrieve the query parameters from the `URLSearchParams` object, you can use the `get` method to get the value of a specific parameter, or the `getAll` method to get all values associated with a specific key. Here's an example:
params.get('search'); // returns 'node.js'
params.getAll('tags'); // returns an empty array if 'tags' is not present
If you need to iterate over all query parameters, you can use the `forEach` method. This allows you to perform operations on each key-value pair in the `URLSearchParams` object:
params.forEach((value, key) => {
console.log(`${key}: ${value}`);
});
Additionally, you can delete specific parameters using the `delete` method or remove all parameters using the `delete` method with no arguments. Here's how you can delete a parameter:
params.delete('page');
If you need to create a query string from the `URLSearchParams` object, you can use the `toString` method. This method returns a URL-encoded string representing the query parameters:
console.log(params.toString()); // outputs 'search=node.js'
In conclusion, utilizing `URLSearchParams` in Node.js empowers developers to efficiently handle query parameters in URLs. By following these simple steps, you can leverage the features of `URLSearchParams` to streamline your Node.js applications.