Javascript 从URL段中删除查询字符串

Javascript 从URL段中删除查询字符串,javascript,Javascript,我正在创建一个脚本来检测并返回页面名称。 但是,当存在查询字符串时,它不会返回我想要的“url\u段”的值 有人能告诉我如何删除查询字符串并返回变量“url”和“url\u段”的值吗 您可以使用以下代码: function Q() { var q={}; var a=window.location.search.substring(1); var b=a.split("&"); for (var i=0;i<b.length;i++) {

我正在创建一个脚本来检测并返回页面名称。 但是,当存在查询字符串时,它不会返回我想要的“url\u段”的值

有人能告诉我如何删除查询字符串并返回变量“url”和“url\u段”的值吗

您可以使用以下代码:

function Q() {
    var q={};
    var a=window.location.search.substring(1);
    var b=a.split("&");
    for (var i=0;i<b.length;i++) {
        var c=b[i].split("=");
        q[c[0]]=c[1];
    }
    return q;
}
函数Q(){
var q={};
var a=window.location.search.substring(1);
var b=a.分割(&);
对于(var i=0;i参见


在这种情况下,避免使用jQuery,这是不必要的。您可以使用
window.location.pathname
轻松获取(并解析)路径名。像现在这样拆分它,并获取所需的元素。假设
location
实际上是,则无需在jQuery中包装它。
function Q() {
    var q={};
    var a=window.location.search.substring(1);
    var b=a.split("&");
    for (var i=0;i<b.length;i++) {
        var c=b[i].split("=");
        q[c[0]]=c[1];
    }
    return q;
}
function getLastUrlSegment() {
    return window.location.pathname.substring(window.location.pathname.lastIndexOf('/') + 1);
}

 // http://test.com/action
window.location.pathname == '/action'
getLastUrlSegment() == 'action'

// http://test.com/action/all
window.location.pathname == '/action/all'
getLastUrlSegment() == 'all'

// http://test.com/action/all?page=2
window.location.pathname == '/action/all'
getLastUrlSegment() == 'all'