gpt4 book ai didi

将 unicode 符号代码转换为 HTML 中的 utf-8 的 Javascript 函数

转载 作者:行者123 更新时间:2023-11-27 23:45:25 25 4
gpt4 key购买 nike

我点击链接 How to convert javascript unicode notation code to utf-8?在我的控制台中运行该函数。

function encode_utf8( s ){return unescape( encodeURIComponent( s ) );}( '\u4e0a\u6d77' )

然后我得到:

"上海"

但是,当我这样做时:

foo = function(s){return unescape( encodeURIComponent( s ) );}
foo('\u4e0a\u6d77');
foo("\u4e0a\u6d77");

然后我得到"ä¸æµ·""ä¸æµ·"

函数有什么问题?先谢谢了。

编辑: 谢谢大家的解释。现在我发现你只需要在Chrome控制台直接输入'\u4e0a\u6d77',然后我就会得到“上海”。 但是我最初的问题是我想在 html 文件中将 unicode 代码转换为 utf-8,而不是在控制台中。我找不到答案。

编辑: 再次,我要感谢你们。 现在我发现我的问题是我从 txt 文件中得到像 '\\u4e0a\\u6d77' 这样的字符串。 (注意这里有两个反斜杠)。我怎样才能将它更改为 '\u4e0a\u6d77'(我想去掉一个反斜杠)。 现在我知道一旦你得到 '\u4e0a\u6d77'(只有一个反斜杠)然后 HTML 会自动将它显示为“上海”

编辑: 现在我找到了解决方案:HERE

最佳答案

您的第一个是函数声明,后跟括号中的不相关表达式,其中包含字符串文字。该函数永远不会被调用。控制台中的最终结果是括号中表达式的值,即字符串 '\u4e0a\u6d77' 的值,当然是 "上海".

你的第二个首先创建函数(通过函数表达式),然后调用它(出于某种原因两次),传入该字符串,并显示函数的返回值。

所以您看到了差异,因为在第一种情况下,您从不调用该函数,您只是取回您提供的相同字符串。在第二种情况下,您实际调用该函数并取回 UTF-8 数据。

关于将 unicode 符号代码转换为 HTML 中的 utf-8 的 Javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30106386/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com