输入
输出结果
两种模式的区别:
encodeURIComponent:编码所有特殊字符(包括 / ? & =),适合编码 URL 参数值。
encodeURI:保留 URL 结构字符(/ : ? & =),适合编码完整 URL。

什么是 URL 编码?

URL 编码(也叫百分号编码)是将 URL 中的特殊字符和非 ASCII 字符转换为 %XX 格式的过程。 因为 URL 标准只允许部分 ASCII 字符,中文、空格、特殊符号等必须编码后才能在 URL 中传输。 例如,"轻集" 编码后变为 %E8%BD%BB%E9%9B%86

常见问题

Q:encodeURI 和 encodeURIComponent 有什么区别?

A:encodeURI 不会编码 URL 的结构字符(如 / : ? & = #),适合编码整个 URL。encodeURIComponent 会编码所有特殊字符,适合编码 URL 参数值。

Q:什么场景需要 URL 编码?

A:1)在 URL 中传递中文参数;2)API 请求拼接查询字符串;3)处理含特殊字符的链接。