跳转至

decodeURI

✨ 简要概括 decodeURIComponentdecodeURI 的区别

特性 decodeURI(uri) decodeURIComponent(uriComponent)
用途 用于解码**完整的 URI**(Uniform Resource Identifier)。 用于解码 URI 的一个组件(例如,查询参数、路径段)。
解码对象 解码所有被编码的字符,但**不解码**保留字符:#, $, &, +, ,, /, :, ;, =, ?, @。这是因为这些字符在完整的 URI 中有特殊含义(例如,? 分隔路径和查询)。 解码所有被编码的字符,**包括**所有的保留字符(如 &, =, ?, / 等)。
何时使用 当您想还原**整个 URL**,并且希望保留 URI 结构中具有特殊意义的字符(如 /?)时使用。 当您想还原 URL 中**某个参数的值**或**路径的某一段**时使用,因为这些部分内部不应包含未编码的保留字符。

核心区别总结

  • decodeURI保留 URI 中的**结构字符**(如 /, ?, &),因为它用于整个 URI。
  • decodeURIComponent解码所有**字符,包括结构字符,因为它用于 URI 的一个**片段

简单来说:

  • decodeURI 适用于**整个 URL**。
  • decodeURIComponent 适用于 URL 的**一部分**(如查询参数的值)。