如何在Javascript上更改字符串的编码/字符集

How can I change the encoding/charset of a string on Javascript?

本文关键字:字符串 编码 字符集 Javascript      更新时间:2023-09-26

我从div中得到一些文本,如下所示:

var scriptContent = document.getElementsByTagName("pre")[0].innerHTML;

但是,如果文本包含类似"X是<比Y"的内容,scriptContent var将包含"X是&lt比Y"。我真的需要得到与我在浏览器中看到的完全相同的字符串,即"X是<比Y"。

我该如何解决这个问题?

来源https://developer.mozilla.org/en-US/docs/Web/API/element.innerHTML

注意:如果、或节点有一个子文本节点,其中包含字符(&)、(<)或(>),innerHTML将这些字符返回为&amp;lt和&gt使用Node.textContent获取这些文本节点内容的正确副本

document.getElementsByTagName("pre")[0].textContent;

请参阅:https://developer.mozilla.org/en-US/docs/Web/API/Node.textContent

使用textContent属性而不是innerHTML:

var pre = document.getElementsByTagName("pre")[0],
    scriptContent = pre.textContent || pre.innerText;

jsFiddle的现场演示。替代CCD_ 3用于IE<9.