根据JavaScript - The Definitive指南,
JavaScript假定它正在解释的源代码已经规范化,并且不会尝试规范化标识符,字符串或正则表达式本身.
Unicode标准定义了所有字符的首选编码,并指定了将文本转换为适合比较的规范形式的规范化过程.
如果JS没有规范化Unicode,那么谁来做它以及什么时候?
如果JavaScript没有规范化Unicode,那么如何
"café" === "caf\u00e9" // => true
Run Code Online (Sandbox Code Playgroud)
为什么
"café" === "cafe\u0301" // => false
Run Code Online (Sandbox Code Playgroud)
由于两者(\u00e9
和e\u0301
)都是Unicode形成é的方式.