イベントを作成
文字列のアンエスケープ・デコード処理を行うには、unescape
関数、decodeURI
関数、decodeURIComponent
関数のいずれかを使用します。
これらはエスケープしない文字列とエスケープシーケンスに違いがありますが、unescape関数は非推奨とされているため、decodeURI関数かdecodeURIComponent関数を使用します。
escape関数で処理された文字はunescape関数、
encodeURI関数で処理された文字はdecodeURI関数、
encodeURIComponent関数で処理された文字はdecodeURIComponent関数
でそれぞれにあった処理をする必要があります。
構文
unescape
var str = unescape(encoded string);
encodeURI
var str = decodeURI(encoded string);
encodeURIComponent
var str = decodeURIComponent(escStr3);
引数:unescape
引数名 | 型 | 説明 | |
---|---|---|---|
第一引数 必須 |
encoded string | string | 16進数のエスケープシーケンスでエンコーディングされた文字列 |
引数:encodeURI
引数名 | 型 | 説明 | |
---|---|---|---|
第一引数 必須 |
encoded string | string | UTF-8エンコーディングされた文字列 |
引数:encodeURIComponent
引数名 | 型 | 説明 | |
---|---|---|---|
第一引数 必須 |
encoded string | string | UTF-8エンコーディングされた文字列 |
戻り値
デコードされた文字列を返します。
サンプルコード
JavaScript
var str = 'abcdefg123456-_.!~*\'();,/?:@&=+$あいうえおテスト#';
// エンコード
var result1 = escape(str),
result2 = encodeURI(str),
result3 = encodeURIComponent(str);
// デコード
var result4 = unescape(result1),
result5 = decodeURI(result2),
result6 = decodeURIComponent(result3);
alert(result4);
alert(result5);
alert(result6);