转码
encodeURI
不会对下列字符转码
- ASCII字母
- 数字
- 特殊符号:~!*()'@#$&*=:/,;?+
应用场景:对整个url进行转码
encodeURIComponent
不会对下列字符转码
- ASCII字母
- 数字
- 特殊符号:~!*()'
应用场景:对url的某个部分进行转码,例如请求参数
escape
不会对下列字符转码
- ASCII字母
- 数字
- @*/+
应用场景:对单纯的字符串进行转码
解码
decodeURI:为encodeURI对应得解码方法
encodeURIComponent:为encodeURIComponent对应得解码方法
什么时候需要考虑
- 当涉及URL,且URL里的参数涉及特殊符号~!*()'@#$&*=:/,;?+时