如何使用 Javascript 将此文本转换为正确的 HTML 字符

Pau*_*nho 0 html javascript encoding utf-8 converters

如何使用 Javascript 将此文本转换为正确的 HTML 字符:

'PingAsyncTask - 令牌 v\ufffdlido'

输入你的控制台:

console.log('PingAsyncTask - 令牌 v\ufffdlido');

我已经尝试了所有常用功能:

  1. https://gist.github.com/chrisveness/bcb00eb717e6382c5608
  2. http://monsur.hossa.in/2012/07/20/utf-8-in-javascript.html
  3. http://jsfromhell.com/geral/utf-8

谁能帮我?

Jor*_*ing 5

如果您的文档已经是 UTF-8,则无需执行任何特殊操作。该字符串已在 JavaScript 中正确编码,因此当您将其写入文档时,它会正确显示。您可以在这个小提琴中看到它:https://jsfiddle.net/baar4ew8/

\n\n

PS 您的代码 ( ) 中的字符\\ufffd是U+FFFD,即 Unicode 替换字符。大多数字体将其呈现为内部带有问号的黑色菱形,或者只是一个空框。Stack Overflow 的渲染方式如下:

\n\n
\n

\xef\xbf\xbd

\n
\n\n

如果您在输出中看到这一点,则说明您的字符串已正确呈现。

\n\n

如果您认为应该看到其他字符,那么您的问题不在于 HTML 或 JavaScript\xe2\x80\x94,而在于数据源,无论数据源是什么。当程序将文本从非 Unicode 编码转换为 UTF-8 等 Unicode 编码时,Unicode 中不存在的字符将替换为 U+FFFD (\xef\xbf\xbd)\xe2\x80\x94,因此“替换字符。” 如果您期望 Unicode 中确实存在某些字符,但您得到的是 U+FFFD,则可能是因为将文本转换为 UTF-8 的程序不知道它最初采用的编码方式,并且所以转换错误。例如,如果您将编码为 X 的文本存储在编码为 Y 的数据库表中,而没有先将其转换为编码 Y。

\n