JavaScript Ottieni parametri URL

Harshit Jindal 12 ottobre 2023
  1. Usa searchParams dell’oggetto URL per ottenere i valori dai parametri GET
  2. Usa location.search per ottenere i valori dai parametri GET
JavaScript Ottieni parametri URL

Questo tutorial insegna come ottenere i valori dai parametri GET.

Usa searchParams dell’oggetto URL per ottenere i valori dai parametri GET

L’oggetto URL rappresenta l’URL definito dai parametri. Possiamo usare la sua proprietà searchParams per restituire un oggetto URLSearchParams che ci permette di accedere ai parametri decodificati in GET. Possiamo quindi utilizzare la funzione get allegata all’oggetto URLSearchParams per ottenere il valore di qualsiasi parametro all’interno dell’URL.

var input_string =
    'http://www.google.com/app.html?apple=1&banana=3&cherry=m2';  // window.location.href
var url = new URL(input_string);
var cherry = url.searchParams.get('cherry');
console.log(cherry);

Nel codice sopra, otteniamo prima l’oggetto URLSearchParams e poi usiamo la sua funzione get per ottenere i valori dei parametri decodificati.

Usa location.search per ottenere i valori dai parametri GET

La proprietà search di location è fondamentalmente una stringa di ricerca chiamata anche query string. Per ottenere i valori dei parametri, dividiamo la stringa e quindi memorizziamo i parametri ei loro valori in un dizionario. Possiamo quindi usare facilmente il dizionario per ottenere tutte le coppie chiave e valore.

var GET_parameters = {};

if (location.search) {
  var splitts = location.search.substring(1).split('&');
  for (var i = 0; i < splitts.length; i++) {
    var key_value_pair = splitts[i].split('=');
    if (!key_value_pair[0]) continue;
    GET_parameters[key_value_pair[0]] = key_value_pair[1] || true;
  }
}

var abc = GET_parameters.abc;

Tutti i metodi discussi sono supportati da tutti i principali browser.

Harshit Jindal avatar Harshit Jindal avatar

Harshit Jindal has done his Bachelors in Computer Science Engineering(2021) from DTU. He has always been a problem solver and now turned that into his profession. Currently working at M365 Cloud Security team(Torus) on Cloud Security Services and Datacenter Buildout Automation.

LinkedIn