在线文档教程
JavaScript
错误 | Errors

Errors: Malformed URI

Errors: Malformed URI

信息

URIError: malformed URI sequence (Firefox) URIError: URI malformed (Chrome)

错误类型

URIError

什么地方出了错?

URI编码或解码不成功。给任一个参数decodeURIencodeURIencodeURIComponent,或decodeURIComponent功能是无效的,因此该功能无法编码或解码正常。

例子

编码

编码通过代表字符的UTF-8编码的一个,两个,三个或四个转义序列来替换某些字符的每个实例。一个URIError如果存在以编码替代这不是一个高-低对的一部分,例如,试图将被抛出:

encodeURI('\uD800' // "URIError: malformed URI sequence" encodeURI('\uDFFF' // "URIError: malformed URI sequence"

高低对可以。例如:

encodeURI('\uD800\uDFFF' // "%F0%90%8F%BF"

解码

解码会将编码的URI组件中的每个转义序列替换为它所表示的字符。如果没有这样的字符,就会抛出一个错误:

decodeURIComponent('%E0%A4%A' // "URIError: malformed URI sequence"

通过适当的输入,通常应该看起来像这样:

decodeURIComponent('JavaScript_%D1%88%D0%B5%D0%BB%D0%BB%D1%8B' // "JavaScript_шеллы"