"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment accéder aux paramètres de requête GET en JavaScript à l'aide d'API natives et de techniques héritées ?

Comment accéder aux paramètres de requête GET en JavaScript à l'aide d'API natives et de techniques héritées ?

Publié le 2024-11-11
Parcourir:131

How to Access GET Request Parameters in JavaScript Using Native APIs and Legacy Techniques?

Accès aux paramètres de requête GET en JavaScript

Les navigateurs modernes fournissent des API natives pour manipuler les URL et les chaînes de requête. Ces API, y compris URL et URLSearchParams, doivent être prioritaires pour assurer la compatibilité avec les navigateurs modernes.

Solution originale :

Avant les API natives, tous les paramètres de requête GET étaient accessibles via la propriété window.location.search. Cependant, cela nécessite une analyse manuelle de la chaîne de requête. La fonction suivante peut être utilisée :

function getQueryParam(name) {
  const regex = new RegExp('[?&]'   encodeURIComponent(name)   '=([^&]*)');
  const result = regex.exec(location.search);
  return result ? decodeURIComponent(result[1]) : undefined;
}

Cette fonction prend un nom de paramètre GET et renvoie sa valeur. Si le paramètre n'existe pas ou n'a pas de valeur, il renvoie undefined.

Exemple :

const foo = getQueryParam('foo');

Cela attribuera la valeur du paramètre GET foo à la variable foo.

Déclaration de sortie Cet article est réimprimé à l'adresse : 1729248736. En cas d'infraction, veuillez contacter [email protected] pour le supprimer.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3