String.fromCharCode(n)如何处理特殊字符代码,如' NUL'?

时间:2014-04-16 17:00:34

标签: javascript

我使用String.fromCharCode(n)(其中n是数字),返回数字值的字符串表示形式,范围从0到127(ASCII字符集)。传递不与可打印字符直接相关的值时会发生什么,例如0(这是ASCII中的NUL)?

我通过使用您可以找到here的警报对其进行了测试,尽管在这种情况下我认为正在进行某种类型的强制攻击。

2 个答案:

答案 0 :(得分:5)

您将获得包含该字符的字符串。它将打印为空字符串,因为该字符没有可打印的表示形式,但该字符串将包含该字符。例如:

String.fromCharCode(0) === "\u0000" // true
String.fromCharCode(0, 1) === "\u0000\u0001" // also true

请注意,您可以通过这种方式将NULL嵌入到字符串中;它不像C那样假定NULL字符是字符串的结尾。

答案 1 :(得分:0)

String.fromCharCode(10) ="\n"

对于NULL,它将在Firebug中显示如下。在文档中它不可显示(因为它为空)

String.fromCharCode(0) = "" 
(will show empty string, since this is marked as non-displayable string character)

在萤火虫中,它有时显示为“ ”,但一旦刷新它将显示空字符串。