【发布时间】:2013-08-22 14:02:40
【问题描述】:
在我的程序中,我在条目中有这个字符串:
var toto = "Loïc";
我想解码这个字符串以获得:
'Loïc'
我该怎么做?
【问题讨论】:
标签: javascript unicode encoding html-entities
在我的程序中,我在条目中有这个字符串:
var toto = "Loïc";
我想解码这个字符串以获得:
'Loïc'
我该怎么做?
【问题讨论】:
标签: javascript unicode encoding html-entities
à 和 à 是实体编号。你可以使用这个:
var element = document.createElement('div');
element.innerHTML = toto;
console.log(element.textContent);
> "Loïc"
【讨论】:
查看内置的 JavaScript 函数 encodeURIComponent(str) 和 encodeURI(str)。
var muUrl="http://www.google.com?ul=اردوان";
var myUrl2 = "http://XXXX.com/default.aspx?link=" + encodeURIComponent(myUrl);
在你的情况下,这应该可以工作
【讨论】:
这些是 HTML 字符引用,也称为“HTML 实体”。
要在 JavaScript 中解码(或编码)它们,最好使用the he library。 he(用于“HTML 实体”)是用 JavaScript 编写的强大的 HTML 实体编码器/解码器。它支持all standardized named character references as per HTML,处理ambiguous ampersands 和其他极端情况just like a browser would,具有广泛的测试套件,并且——与许多其他JavaScript 解决方案相反——he 可以很好地处理星体Unicode 符号。 An online demo is available.
var input = 'foo © bar ≠ baz 𝌆 qux';
var output = he.decode(input);
console.log(output);
// → 'foo © bar ≠ baz ? qux'
(顺便说一句,所有这些都与 UTF-8 编码无关。我已经从这个问题中删除了标签。)
【讨论】: