怎么可能`/\uffff/.test(“\ uffff”)`不是`true`(在JavaScript中)?

时间:2015-08-10 21:22:58

标签: javascript regex character-encoding

我在Google的缩小JavaScript源代码中偶然发现了以下几行。

var X=/\uffff/.test("\uffff")?/[\\\"\x00-\x1f\x7f-\uffff]/g:/[\\\"\x00-\x1f\x7f-\xff]/g;

我对正则表达式,字符集,UTF,Unicode等非常有信心。但是这个该死的单行让我很困惑。而且仍然如此。

我发现X is actually goog.json.Serializer.charsToReplace_。好吧,找到the non-minified version回答了我的其他一些问题。

尽管如此,我仍然无法看到使用这个三元运算符构造的原因 - ,因为此静态表达式无法评估为false 。因此,为什么不只是赋值?或者我错过了什么?

/\uffff/.test("\uffff") 如何返回true/\uffff/.test("\uffff")如何false

0 个答案:

没有答案