相关疑难解决方法(0)

使用Javascript的atob解码base64不能正确解码utf-8字符串

我正在使用Javascript window.atob()函数来解码base64编码的字符串(特别是GitHub API中的base64编码内容).问题是我得到了ASCII编码的字符(â¢而不是).如何正确处理传入的base64编码流,以便将其解码为utf-8?

javascript encoding utf-8

84
推荐指数
7
解决办法
12万
查看次数

在JavaScript中使用encodeURI()与escape()for utf-8字符串

我在JavaScript中处理utf-8字符串并需要转义它们.

escape()/ unescape()和encodeURI()/ decodeURI()都可以在我的浏览器中使用.

逃逸()

> var hello = "?????"
> var hello_escaped = escape(hello)
> hello_escaped
  "%uC548%uB155%uD558%uC138%uC694"
> var hello_unescaped = unescape(hello_escaped)
> hello_unescaped
  "?????"
Run Code Online (Sandbox Code Playgroud)

是encodeURI()

> var hello = "?????"    
> var hello_encoded = encodeURI(hello)
> hello_encoded
  "%EC%95%88%EB%85%95%ED%95%98%EC%84%B8%EC%9A%94"
> var hello_decoded = decodeURI(hello_encoded)
> hello_decoded
  "?????"
Run Code Online (Sandbox Code Playgroud)

但是,Mozilla说escape()已被弃用.

虽然encodeURI()和decodeURI()使用上面的utf-8字符串,但docs(以及函数名称本身)告诉我这些方法适用于URI; 我没有看到任何地方提到的utf-8字符串.

简单地说,对于utf-8字符串使用encodeURI()和decodeURI()是否可以?

javascript unicode encode escaping utf-8

18
推荐指数
1
解决办法
6万
查看次数

标签 统计

javascript ×2

utf-8 ×2

encode ×1

encoding ×1

escaping ×1

unicode ×1