### 彪哥

爱好前端

- JavaScript文章

  - 33个非常实用的JavaScript一行代码
  - new命令原理
  - ES5面向对象
  - ES6面向对象
  - 多种数组去重性能对比
  - JS随机打乱数组
  - 判断是否为移动端浏览器
  - 将一维数组按指定长度转为二维数组
  - 防抖与节流函数
  - JS获取和修改url参数
    - 获取url参数
    - 修改url参数
    - 不刷新页面修改url参数
    - URL 的编码和解码
  - 比typeof运算符更准确的类型判断

  - 三级目录

- 学习笔记

- 前端
- JavaScript文章

heBody
2020-03-05
目录

# JS获取和修改url参数

# # JS获取和修改url参数

## # 获取url参数

    /**
     * 获取url里的参数
     * @param arg 参数名
     * @returns
     */
    function getURLString(arg) {
        var reg = new RegExp("(^|&)" + arg + "=([^&]*)(&|$)", "i");
        var r = window.location.search.substr(1).match(reg);
        if (r != null)
            return unescape(r[2]);
        return null;
    }

1
2
3
4
5
6
7
8
9
10
11
12

## # 修改url参数

    /**
     * url地址修改
     * @param url 待修改url
     * @param arg 修改的参数名
     * @param arg_val 修改的具体值
     * @returns {String}
     */
    function changeURLArg(url, arg, arg_val) {
        var pattern = arg + '=([^&]*)';
        var replaceText = arg + '=' + arg_val;
        if (url.match(pattern)) {
            var tmp = '/(' + arg + '=)([^&]*)/gi';
            tmp = url.replace(eval(tmp), replaceText);
            return tmp;
        } else {
            if (url.match('[\?]')) {
                return url + '&' + replaceText;
            } else {
                return url + '?' + replaceText;
            }
        }
    }

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

## # 不刷新页面修改url参数

https://www.cnblogs.com/wuting/p/8946927.html
(opens new window)

## # URL 的编码和解码

比如，UTF-8 的操作系统上，`http://www.example.com/q=春节`这个 URL 之中，汉字“春节”不是 URL 的合法字符，所以被浏览器自动转成`http://www.example.com/q=%E6%98%A5%E8%8A%82`。其中，“春”转成了`%E6%98%A5`，“节”转成了`%E8%8A%82`。这是因为“春”和“节”的 UTF-8 编码分别是`E6 98 A5`和`E8 8A 82`，将每个字节前面加上百分号，就构成了 URL 编码。

JavaScript 提供四个 URL 的编码/解码方法。

- `encodeURI()`
- `encodeURIComponent()`
- `decodeURI()`
- `decodeURIComponent()`

查看文档
(opens new window)

编辑
(opens new window)
上次更新: 2022/12/14, 19:36:42
防抖与节流函数
比typeof运算符更准确的类型判断

← 防抖与节流函数 比typeof运算符更准确的类型判断→

最近更新

  01
Git修改分支名
08-11

  02
CSS给table的tbody添加滚动条
06-29

  03
我做了一个手写春联小网页，祝大家虎年暴富 原创
01-28

更多文章>

Copyright © 2016-2022 Hesb | MIT License

- 跟随系统
- 浅色模式
- 深色模式
- 阅读模式