Javascript打字稿将特殊字符附加到字符串不起作用

时间:2019-03-26 19:08:32

标签: javascript string typescript

我将有条件地附加一个字符串,其值来自捕获的DOM元素。对于空的情况,我想在字符串后附加字符“¬”。虽然这样会驱动在字符串后加上``。可能是因为无法识别上述特殊字符。

这是代码示例:

var nodeList = foo.childNodes;

  var str = "";
  for (var i = 0; i < nodeList.length; i++) {
    var item = nodeList[i];
    str += ((<any>item).wholeText || (<any>item).value || "¬");
  }

正确添加特殊字符“¬”并获得所需结果的方式是什么?欢迎任何帮助

1 个答案:

答案 0 :(得分:3)

您要在默认编码方案中附加由操作系统产生的字符。字符的编码方式取决于您用来保存文件的软件。 UTF-8被公认为是良好的编码国际标准,但是您需要确保软件以这种方式保存了文件,然后需要在网页中包含向客户声明如何编码网页的声明,因此他们可以正确解码。这是通过文档的<head>部分中的以下操作完成的:

<meta charset="UTF-8">

即使是这样,即使您使用的字符不在Unicode字符集中,在解码时,它也可能不会对其他所有人显示相同的字符。

为帮助解决此问题,您可以指示客户使用HTML entity code生成许多特殊符号和字符:

let div = document.querySelector("div");
div.innerHTML = "&not;";
div { font-size: 3em; }
<div></div>