美文网首页
js删除 url 中指定参数,并返回 url

js删除 url 中指定参数,并返回 url

作者: SunShine_2145 | 来源:发表于2019-12-12 15:13 被阅读0次

实现代码:history模式

// 删除url中某个参数,并跳转

function funcUrlDel(name){

    var loca = window.location;

    var baseUrl = loca.origin + loca.pathname + "?";

    var query = loca.search.substr(1);

    if (query.indexOf(name)>-1) {

        var obj = {}

        var arr = query.split("&");

        for (var i = 0; i < arr.length; i++) {

            arr[i] = arr[i].split("=");

            obj[arr[i][0]] = arr[i][1];

        };

        delete obj[name];

        var url = baseUrl + JSON.stringify(obj).replace(/[\"\{\}]/g,"").replace(/\:/g,"=").replace(/\,/g,"&");

        return url

    };

}

hash模式:

function funcUrlDel(name) {

    var loca = window.location;

    var baseUrl = loca.origin + loca.pathname;

    var query = loca.hash;

    if (query.indexOf(name) > -1) {

      var obj = {}

      var arr = query.split("&");

      for (var i = 0; i < arr.length; i++) {

        arr[i] = arr[i].split("=");

        obj[arr[i][0]] = arr[i][1];

      };

      delete obj[name];

      var url = baseUrl + JSON.stringify(obj).replace(/[\"\{\}]/g, "").replace(/\:/g, "=").replace(/\,/g, "&");

      return url;

    }

  },

注意

1.URL:http://b.a.com:88/index.php?name=kang&how=#when=2016#first

search:"?name=kang&how="     第一个"?"之后

hash:"#when=2016#first"        第一个"#"之后的内容

2,为什么 window.location.search 为空?

答:注意上面的search和hash的区别,如果URL中“?”之前有一个“#”比如:“http://localhost:63342/index.html#/version?type=35&id=5”那么使用window.location.search得到的就是空(“”)。因为“?type=35&id=5”串字符是属于“#/version?type=35&id=5”这个串字符的,也就是说查询字符串search只能在取到“?”后面和“#”之前的内容,如果“#”之前没有“?”search取值为空。

相关文章

  • js删除 url 中指定参数,并返回 url

    实现代码:history模式 // 删除url中某个参数,并跳转 function funcUrlDel(name...

  • js操作浏览器Url

    1.获取url中的参数 2.在指定url栏附加参数或替换参数值 3.删除Url中的指定参数

  • 获取url中的参数并返回

    /** 获取url中的参数并返回 @param urlString 带参数的url @return @[NSStr...

  • jquery删除地址栏中,指定的参数名

    var url = delParam('search');//删除参数名--search /*删除地址栏中,指定的...

  • 获取url中的参数

    获取 url 中的参数 指定参数名称,返回该参数的值 或者 空字符串 不指定参数名称,返回全部的参数对象 或者 {...

  • 练习1--解析URL参数

    题目描述获取 url 中的参数 指定参数名称,返回该参数的值 或者 空字符串 不指定参数名称,返回全部的参数对象 ...

  • 在路由中截取网址参数

    1.vuejs取得URL中参数的值 2. js获取URL中的参数 js获取URL中的一些参数的意思location...

  • 获取指定url参数

    获取指定url参数 获取指定url的指定参数 浏览器类型

  • velocity的macro

    分页 计算页码 拼凑url参数的宏 分解url参数的宏 在URL中添加查询参数 删除URL中的查询参数 初始化UR...

  • js日常方法总结

    封装函数 f,使 f 的 this 指向指定的对象 获取 url 中的参数 指定参数名称,返回该参数的值 或者 空...

网友评论

      本文标题:js删除 url 中指定参数,并返回 url

      本文链接:https://www.haomeiwen.com/subject/pbltnctx.html