【发布时间】:2021-11-01 00:20:01
【问题描述】:
默认情况下,String.prototype.normalize() 使用 NFC 作为参数。 NFC 将多个字符替换为单个字符。
您可以指定“NFC”来获取组合的规范形式,其中 多个代码点被替换为单个代码点,其中 可能。
这里有一个来自 MDN 的例子。它有效。
let str = '\u006E\u0303';
str = str.normalize();
console.log(`${str}: ${str.length}`);
但后来我决定用其他角色尝试这种方法。例如:
let str = '\u0057\u0303';
str = str.normalize();
console.log(`${str}: ${str.length}`);
第二个例子有什么问题?为什么它不起作用?
【问题讨论】:
-
可能是因为 unicode 中不存在单个字符 W̃(更进一步,因为地球上没有任何语言使用这个字符)
标签: javascript normalize