Wie kann ich einen Abfragezeichenfolgenparameter in JavaScript löschen, ohne auf reguläre Ausdrücke angewiesen zu sein?
Anstatt einen regulären Ausdruck zum Löschen einer Abfrage zu verwenden Für den String-Parameter besteht ein robusterer Ansatz darin, die Parameter zu analysieren. Hier ist eine Beispielimplementierung:
function removeURLParameter(url, parameter) { // Parse the URL into parts var urlparts = url.split('?'); // If there's no query string, return the original URL if (urlparts.length < 2) { return url; } // Split the query string into individual parameters var pars = urlparts[1].split(/[&;]/g); // Reverse iterate to ensure the order of items after splicing for (var i = pars.length; i--;) { // Check if the parameter starts with the specified prefix if (pars[i].lastIndexOf(encodeURIComponent(parameter) + '=', 0) !== -1) { // Remove the offending parameter pars.splice(i, 1); } } // Rebuild the query string var newQuery = (pars.length > 0 ? '?' + pars.join('&') : ''); // Rebuild the full URL return urlparts[0] + newQuery; }
Dieser Ansatz hat mehrere Vorteile:
Das obige ist der detaillierte Inhalt vonWie entferne ich einen Abfragezeichenfolgenparameter in JavaScript, ohne reguläre Ausdrücke zu verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!