How can I get query string values in JavaScript?

Retrieving query string values from a URL is a common task in web development. Query strings are the part of a URL that comes after the question mark (?) and can contain various parameters and their values. In JavaScript, there are multiple ways to extract query string values without the need for any plugins.

Method 1: Using the URL Search Params API

The URL Search Params API provides an easy and convenient way to work with query string parameters in modern browsers. Here's an example:

const urlParams = new URLSearchParams(window.location.search);
const myParam = urlParams.get('myParam');

In the code snippet above, we create a new instance of the URLSearchParams object with the query string from the current URL using window.location.search. Then, we can use the get method to retrieve the value of a specific parameter.

Method 2: Using Regular Expressions

If you prefer a more manual approach, you can use regular expressions to parse the query string. Here's an example:

function getUrlParameter(name) {
    name = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]');
    var regex = new RegExp('[\\?&]' + name + '=([^&#]*)');
    var results = regex.exec(location.search);
    return results === null ? '' : decodeURIComponent(results[1].replace(/\+/g, ' '));
}

const myParam = getUrlParameter('myParam');

In this code snippet, we define a function called getUrlParameter that takes a parameter name as input. It uses a regular expression to match the parameter name in the query string and retrieves its value. The function then returns the decoded value of the parameter or an empty string if the parameter is not found.

Method 3: Using the location.search Property

An alternative way to extract query string values is by directly accessing the location.search property. Here's an example:

const queryString = window.location.search;
const urlParams = new URLSearchParams(queryString);
const myParam = urlParams.get('myParam');

In this code snippet, we retrieve the query string from window.location.search and then use the same URLSearchParams object as in Method 1 to extract the value of a specific parameter.

Summary

In conclusion, there are multiple ways to retrieve query string values in JavaScript without the need for any plugins:

  • Using the URL Search Params API
  • Using regular expressions
  • Using the location.search property

Choose the method that suits your project and programming style. These methods will work across different browsers and allow you to easily extract and use query string values in your JavaScript code.