反馈

Escape编码解码


    
浏览器本地运算,内容不上传。相关: URL 解析 · Base64 · Unicode 编解码 · UTF-8 与十六进制 · 文本转 HTML

📖 工具说明

1. 这个工具能做什么

一次处理几类常见的字符转义,边输入边转,可勾选「自动判断方向」(看到 %XX、&、\uXXXX 就解码,否则编码):

模式 用途
encodeURIComponent / 解码 编码放进 URL 的单个参数值,& = ? / 空格 中文 都会转成 %XX
encodeURI / 解码 编码整条 URL,保留 : / ? # [ ] @ 等结构字符
全字节 %XX 编码 连 - _ . ~ 也编码,用于要求最严格的场合
HTML 转义 / 反转义 < > & " ↔ &lt; &gt; &amp; &quot;,防 XSS、在网页里显示代码
JS 字符串转义 文本 ↔ \uXXXX / \xXX,写进 JS/JSON 源码字符串
escape() / unescape() 旧版函数,产生 %uXXXX,只为兼容老脚本
列出码位 逐字符显示 U+XXXX

全部在浏览器本地完成,内容不上传。

2. 该用哪个

3. 常见问题(FAQ)

Q:encodeURI 和 encodeURIComponent 有什么区别? A:encodeURI 假设你给的是完整 URL,所以不编码 : / ? # & = 这些结构字符;encodeURIComponent 假设你给的是一个片段/值,几乎所有非字母数字都编码。放进 ?key= 后面的值用后者。

Q:解码报错"URI malformed"? A:待解码的字符串里有落单的 %(后面不是两位十六进制),或转义序列被截断。检查是否复制完整。

Q:escape() 为什么不推荐? A:它对非 ASCII 产生 %uXXXX,不是标准的百分号编码,很多语言/服务无法识别。除非要对接依赖它的老系统,一律用 encodeURIComponent。

Q:HTML 反转义安全吗? A:这里只做文本层面的实体还原,不会执行脚本。但还原后的内容不要直接 innerHTML 插回页面,否则可能引入 XSS。

Q:数据会上传吗? A:不会,所有转换在浏览器本地完成。


相关:URL 解析 · Base64 · Unicode 编解码 · UTF-8 与十六进制 · 文本转 HTML。

📖 了解原理

📖 相关推荐