2008年01月14日 14:30 [Edit]

この記事をクリップ! newsing it! Buzzurlにブックマーク b.hatena.ne.jp/entry javascript - \uXXXXを使わない理由

そんなことは、ない。

JavaScriptには\uXXXXがあるんですよ[文系大学的IT系の悲哀]
dankogaiさんはあまりJavaScriptのリテラルに詳しくないのかな?

\uXXXXを使わないのは、訳がある。


理由は、こちら。

404 Blog Not Found:javascript - encodeURIUnicode()と%uXXXX問題
ただし、この「ほぼ」という奴がくせ者で、現状JavaScriptでは、BMPより上の文字はJavaと同じくSurrogate Pairで表現する。例えば「𪚲」(U+2A6B2)は、実体参照では𪚲なのだが、"𪚲".lengthは2であり、escape表現だと%uD869%uDEB2となる。

これがある限り\uXXXXは使うべきではないと考えている。BMPしか扱えない\uXXXXは、JavaScriptがJavaから受け継いだ Bad Legacy だ。

現時点で acceptable なのは、Perlの\x{XXXXXX}と Python の \UXXXXXXXXだが、Pythonのそれはコレジャナイ感がかなり強い。Ruby 1.9ではどうなるのだろうか....

Dan the Man with too Many Unicode Notations to Cover


この記事へのトラックバックURL

この記事へのソーシャルブックマーク
はてなブックマーク
Livedoorクリップ
0 Buzzurl
この記事へのトラックバック
[追記]404 Blog Not Found:javascript - \uXXXXを使わない理由を受けて追記 dankogaiさんはあまりJavaScriptのリテラルに詳しくないのかな? 404 Blog Not Found:regexp -...
JavaScriptには\uXXXXがあるんですよ【文系大学的IT系の悲哀】at 2008年01月14日 16:42
この記事へのコメント
\uXXXX か \u{XXXXX} ですね。後者はBMP超えます。
Posted by naruse at 2008年01月14日 15:20
naruseさん、
「rubyでは」が省略されているということでOK?
一応念のため。
Dan the Man with too Many Unicode Notations to Cover
Posted by at 2008年01月14日 15:27
あああ、そうですね。「Ruby1.9では」です。
Posted by naruse at 2008年01月14日 19:30
JavaScriptがJavaから受け継いだ Bad Legacy だ
Posted by shibo at 2008年01月15日 07:29