Languages
[Edit]
EN

JavaScript - get URL request parameters using custom logic

9 points
Created by:
GamerGoals22
364

In this article, we would like to show you how to get URL request parameters in JavaScript using custom logic.

Note: to understand how the below example works, copy the code into your project.

Example index.html file:

<!doctype html>
<html>
<head>
  <script src="request-parameters.js"></script>
</head>
<body>
  <script>

    console.log('------- by getParameters() -------');

    var parameters = RequestParameters.getParameters();

    for (var i = 0; i < parameters.length; ++i) {
        var parameter = parameters[i];
        console.log(parameter.name + ': ' + parameter.value);
    }

    console.log('------- by getParameter() --------');

    var pageNumber = RequestParameters.getParameter('page-number', '1');
    var pageSize = RequestParameters.getParameter('page-size', '20');
    var dataOrder = RequestParameters.getParameter('data-order', 'A-Z');

    console.log('page-number: ' + pageNumber);
    console.log('page-size: ' + pageSize);
    console.log('data-order: ' + dataOrder);

  </script>
</body>
</html>

Example result:

JavaScript request parameters logic usage example.
JavaScript request parameters logic usage example.

Example request-parameters.js file:

// 'use strict';

(function (window) {
	var PARAMETER_REGEX = /^([^=]+)(?:=(.*))?$/g;

	function matchParameter(text) {
		PARAMETER_REGEX.lastIndex = 0;
		return PARAMETER_REGEX.exec(text);
	}

	function decodeComponent(part) {
		if (part) {
			return decodeURIComponent(part);
		}
		return null;
	}

	function parseParameters(search) {
		var parameters = { };
		var postfix = search.substring(1);
		if (postfix) {
			var parts = postfix.split('&');
			for (var i = 0; i < parts.length; ++i) {
				var part = parts[i];
				if (part) {
					var match = matchParameter(part);
					if (match) {
						var name = decodeComponent(match[1]);
						parameters[name] = decodeComponent(match[2]);
					}
				}
			}
		}
		return parameters;
	}

	window.RequestParameters = new function() {
		var search = location.search;
		var parameters = parseParameters(search);
		this.getParameter = function(name, defaultValue) {
			return parameters[name] || defaultValue;
		};
		this.getParameters = function() {
			var result = [ ];
			for (var key in parameters) {
				result.push({name: key, value: parameters[key]});
			}
			return result;
		};
	};
})(window);

 

See also

  1. JavaScript - get search parameters from current URL

  2. JavaScript - get, set, and remove URL hash parameters

  3. JavaScript - get search part from current URL

Alternative titles

  1. JavaScript - get Spring @RequestParam using custom logic
  2. JavaScript - get URL search parameters using custom logic
  3. JavaScript - get URL query parameters using custom logic
  4. PHP $_GET parameters in JavaScript
  5. How to get PHP $_GET parameters in JavaScript?
  6. How to get query string values in JavaScript?
Donate to Dirask
Our content is created by volunteers - like Wikipedia. If you think, the things we do are good, donate us. Thanks!
Join to our subscribers to be up to date with content, news and offers.
Native Advertising
🚀
Get your tech brand or product in front of software developers.
For more information Contact us
Dirask - we help you to
solve coding problems.
Ask question.

❤️💻 🙂

Join