[1] [[JavaScript]] の[[関数]] [DFN[[CODE(JS)@en[[[escape()]]]], [DFN[[CODE(JS)@en[[[unescape()]]]]]] は、[[文字列]]を[[パーセント符号化]]や [CODE(URI)[[[%u]]]] [[符号化]]します。 [2] [[URL]] で用いられている[[パーセント符号化]]とは互換性がなく、 [[URL]] 用としては [CODE(JS)@en[[[encodeURIComponent()]]]], [CODE(JS)@en[[[decodeURIComponent()]]]] などが用意されています。 * 符号化 [4] [[Latin1]] [[文字]] ([CODE(char)[[[U+00FF]]]] [[以下]]) は[[百分率符号化]]されます。 [5] それ以外の[[文字]]は [[UTF-16]] [[符号単位]]ごとに [CODE(URI)[[[%u]]]] を使って[[符号化]]されます。 [6] 歴史的には、[[JavaScript]] [[エンジン]]の[[内部コード]] ([[シフトJIS]]、[[UTF-16LE]] + [[BOM]] など) のまま[[百分率符号化]]されることがありました。 * 実装 [3] [CITE@en[Functions - MDC Docs]] ([TIME[2011-06-12 11:38:48 +09:00]] 版) >The escape and unescape functions let you encode and decode strings. The escape function returns the hexadecimal encoding of an argument in the ISO Latin character set. The unescape function returns the ASCII string for the specified hexadecimal encoding value.