使用说明
- • encodeURI()是Javascript中用来对URL编码的函数。它着眼于对整个URL进行编码,因此除了常见的符号以外,对其他一些在网址中有特殊含义的符号"; / ? : @ & = + $ , #",也不进行编码。编码后,它输出符号的utf-8形式,并且在每个字节前加上%。
- • encodeURIComponent()与encodeURI()的区别是,它用于对URL的组成部分进行个别编码,而不用于对整个URL进行编码。因此"; / ? : @ & = + $ , #",这些在encodeURI()中不被编码的符号,在encodeURIComponent()中统统会被编码。至于具体的编码方法,两者是一样。
关于URL编码
URL编码(Percent-encoding)是将URL中的特殊字符转换为百分号加十六进制数字的格式,确保URL能够在互联网上正确传输。URL中的某些字符具有特殊含义(如?、&、=等),中文和其他非ASCII字符也需要编码才能在URL中使用。
本工具提供encodeURI和encodeURIComponent两种编码方式,帮助开发者正确处理URL中的特殊字符和中文字符,解决URL传参乱码问题。
使用说明
- 在"原始URL"框中输入需要编码或解码的URL
- 点击"编码"按钮,工具会同时显示encodeURI和encodeURIComponent的结果
- 点击"解码"按钮,工具会自动解码编码后的URL
- encodeURI适用于编码完整的URL
- encodeURIComponent适用于编码URL的参数部分
应用场景
- URL参数传递:对URL参数中的中文和特殊字符进行编码
- API调用:在API请求中正确传递包含特殊字符的参数
- 表单提交:处理表单中的中文输入
- 链接分享:确保分享的链接在各种平台上都能正常访问
- 搜索功能:对搜索关键词进行编码
- 重定向:在URL重定向时保持参数的正确性
两种编码方式的区别
- encodeURI:不编码URL中的特殊字符(; / ? : @ & = + $ , #),适合编码完整URL
- encodeURIComponent:编码所有特殊字符,适合编码URL参数值
- 使用场景:编码完整URL用encodeURI,编码参数值用encodeURIComponent
- 示例:encodeURI("http://example.com?name=张三") vs encodeURIComponent("name=张三")