Bagaimanakah saya boleh memadamkan parameter rentetan pertanyaan dalam JavaScript tanpa bergantung pada ungkapan biasa?
Daripada menggunakan ungkapan biasa untuk memadamkan pertanyaan parameter rentetan, pendekatan yang lebih mantap melibatkan penghuraian parameter. Berikut ialah contoh pelaksanaan:
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; }
Pendekatan ini mempunyai beberapa kelebihan:
Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar Parameter Rentetan Pertanyaan dalam JavaScript Tanpa Menggunakan Ungkapan Biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!