JavaScript インタープリターは、解釈しているソース コードが既に正規化されていると想定しているという印象を受けます。正規化とは正確には何ですか?ソースのプレーンテキスト表現が変更されるため、テキスト エディターにはできません。正規化を行う「プリプロセッサ」はありますか?
14795 次
4 に答える
16
いいえ、ECMAScript 5 に従って JavaScript で自動的に使用される、または JavaScript で使用できる Unicode 正規化機能はありません。
例えば試してみてください:
<script type="text/javascript">
var a= 'café'; // caf\u00E9
var b= 'café'; // cafe\u0301
alert(a+' '+a.length); // café 4
alert(b+' '+b.length); // café 5
alert(a==b); // false
</script>
于 2011-10-14T21:25:14.263 に答える
12
を使用している場合node.js
は、unorm
このためのライブラリがあります。
于 2011-12-11T15:56:52.357 に答える
1
@bobince の回答を更新しました。
var cafe4= 'caf\u00E9';
var cafe5= 'cafe\u0301';
console.log (
cafe4+' '+cafe4.length, // café 4
cafe5+' '+cafe5.length, // café 5
cafe4 === cafe5, // false
cafe4.normalize() === cafe5.normalize() // true
);
于 2018-01-06T18:53:18.593 に答える