encodeURI() 与 encodeURIComponent() 的使用场景

默认分类 · 2024-06-17

encodeURI() 编码整个URL

encodeURI("http://abc.com/pagephp?id=123&age=23&sex=\\gril")
输出:http://abc.com/pagephp?id=123&age=23&sex=%5Cgril

encodeURIComponent() 编码URL中的部分组件

什么时候使用encodeURIComponent?参数中有回调地址时使用encodeURIComponent

https://www.baidu.com/s?returnURL=http://www.abc.com/

链接内包含一个回调地址,回调地址是另外一个URL,此时我们就需要使用 encodeURIComponent() 对回调地址进行转码,这样一来,URL中就不会出现多个http://,多个&这样的特殊字符;方便对回调地址进行处理;以上链接处理如下:

'https://www.baidu.com/s?returnURL=' +encodeURIComponent('http://www.abc.com/')
输出: https://www.baidu.com/s?returnURL=http%3A%2F%2Fwww.abc.com%2F

js
Theme Jasmine by Kent Liao