Design: Unicode 规范化

创建于 2017-01-30  ·  6评论  ·  资料来源: WebAssembly/design

从#970 分叉:JS.md 谈论Unicode 规范化

该文档中的一个简单示例:我的名字“Jean-François Bastien”可以通过两种方式标准化

Ç ↔ C+◌̧

这是 Unicode 中的一个很好的陷阱。 在 JS 和 wasm 之间进行交互时,最好知道对生产者和消费者的期望。 我们可以选择不规范化,但我们应该这样说

我看到我们可以在 JS.md 中讨论规范化的 4 种方式:

  1. 禁止/错误/忽略非标准化输入。
  2. 自动标准化 wasm 输入,并比较标准化后的 JS 值。
  3. 自动标准化 wasm 输入,并期望用户调用normalize
  4. 不规范任何东西。

如果我们选择 2. 或 3. 我们应该指定我们期望的规范化形式(因为当然有多种形式的规范化)。

importexports

最有用的评论

我认为convertToJSString函数 Web.md#names 已经指定了 4。不过,添加澄清文本以说明没有发生规范化似乎很好。

所有6条评论

1、2 和 3 似乎是 JS 引擎中深奥错误的好来源。

我投4票。

我认为convertToJSString函数 Web.md#names 已经指定了 4。不过,添加澄清文本以说明没有发生规范化似乎很好。

同意@lukewagner。

FWIW,CSS 也根本没有规范化。

是的,除了 JavaScript 中的 string.normalize() 和 URL 中的 IDNA 之外,Web 平台中没有任何东西使用 Unicode 规范化。 4绝对是你想要的。

甜的。 我想确保我们记录这些决定,而且我们似乎已经达成共识。 关闭。

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

bobOnGitHub picture bobOnGitHub  ·  6评论

spidoche picture spidoche  ·  4评论

mfateev picture mfateev  ·  5评论

nikhedonia picture nikhedonia  ·  7评论

chicoxyzzy picture chicoxyzzy  ·  5评论