在我们平时的开发中,经常会出现一些无效的URI,什么是无效的URI呢?比如说包含空格,冒号,等号等,会影响解析。这时候我们就需要encodeURI或者encodeURIComponent()方法出动了。
encodeURI 会替换所有的字符,但不包括以下字符,即使它们具有适当的UTF-8转义序列:
| 类型 | 包含 |
| 保留字符 | ;,/?:@&=+$ |
| 非转义的字符 | 字母 数字-_.!~*'() |
| 数字符号 | # |
encodeURIComponent 转义除了字母、数字、(、)、.、!、~、*、'、-和_之外的所有字符。
我觉得这两个方法之间相差不大,用的更广泛的是encodeURIComponent()方法,因为在实践中我们更多的是对查询字符串进行编码而不是基础URI。
以上。
欢迎来到我的个人博客来互相讨论技术:http://www.strivingtree.com/





