RangeError: form must be one of 'NFC', 'NFD', 'NFKC', or 'NFKD'

当将无法识别的字符串传递给 String.prototype.normalize() 方法时,会出现 JavaScript 异常“form 必须是 'NFC'、'NFD'、'NFKC' 或 'NFKD' 之一”。

消息

RangeError: The normalization form should be one of NFC, NFD, NFKC, NFKD. (V8-based)
RangeError: form must be one of 'NFC', 'NFD', 'NFKC', or 'NFKD' (Firefox)
RangeError: argument does not match any normalization form (Safari)

错误类型

哪里出错了?

String.prototype.normalize() 方法仅接受以下四个值作为其 form 参数:"NFC""NFD""NFKC""NFKD"。如果传递任何其他值,则会抛出错误。阅读 normalize() 的参考以了解不同的规范化形式。

示例

无效情况

js
"foo".normalize("nfc"); // RangeError
"foo".normalize(" NFC "); // RangeError

有效情况

js
"foo".normalize("NFC"); // 'foo'

另请参阅