Skip to content

Instantly share code, notes, and snippets.

@pbojinov
Last active August 29, 2015 14:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pbojinov/24230b2ed82c2b22c565 to your computer and use it in GitHub Desktop.
Save pbojinov/24230b2ed82c2b22c565 to your computer and use it in GitHub Desktop.
// http://stackoverflow.com/a/979995/907388
// not as fast as doing a regex though - http://jsperf.com/query-parameter-parsing
// https://gist.github.com/pbojinov/ee5a9bb7df7986a6e985
var QueryString = function () {
// This function is anonymous, is executed immediately and
// the return value is assigned to QueryString!
var query_string = {};
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i=0;i<vars.length;i++) {
var pair = vars[i].split("=");
// If first entry with this name
if (typeof query_string[pair[0]] === "undefined") {
query_string[pair[0]] = pair[1];
// If second entry with this name
} else if (typeof query_string[pair[0]] === "string") {
var arr = [ query_string[pair[0]], pair[1] ];
query_string[pair[0]] = arr;
// If third or later entry with this name
} else {
query_string[pair[0]].push(pair[1]);
}
}
return query_string;
} ();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment