JavaScript - 文字列をエンコードする
encodeURI
encodeURI()
メソッドは、URI (Uniform Resource Identifier; 統一資源識別子) をエンコードし、各文字のインスタンスをそれぞれ UTF-8 符号の文字を表す 1 個から 4 個のエスケープシーケンスに置き換えます (サロゲート文字のペアのみ 4 個のエスケープシーケンスになります)。encodeURI
の構文は以下のとおりです。
encodeURI(URI)
文字列をエンコードする - encodeURIURI
- 完全な URI (Uniform Resource Identifier) です。
encodeURI
は、下記以外のすべての文字をエスケープします。
A-Z a-z 0-9 ; , / ? : @ & = + $ - _ . ! ~ * ' ( ) #
encodeURI でエンコードしない文字encodeURI
の返り値は、URI (Uniform Resource Identifier) としてエンコードされた指定された文字列を表す新しい文字列です。
var set1 = ";,/?:@&=+$#";
var set2 = "-_.!~*'()";
var set3 = "ABC abc 123";
console.log(encodeURI(set1)); // ;,/?:@&=+$#
console.log(encodeURI(set2)); // -_.!~*'()
console.log(encodeURI(set3)); // ABC%20abc%20123
文字列をエンコードする - encodeURIencodeURIComponent
encodeURIComponent()
メソッドは、特定の文字を UTF-8 文字エンコーディングで表された 1 個から 4 個のエスケープシーケンスに置き換えることで、URI (Uniform Resource Identifier) 構成要素をエンコードします(サロゲートペアで構成される文字のみ 4 個のエスケープシーケンスになります)。encodeURIComponent
の構文は以下のとおりです。
encodeURIComponent(str)
文字列をエンコードする - encodeURIComponentstr
- URI (Uniform Resource Identifier) の構成要素となる文字列です。
encodeURIComponent
は、下記以外のすべての文字をエスケープします。
A-Z a-z 0-9 - _ . ! ~ * ' ( )
encodeURIComponent でエンコードしない文字encodeURIComponent
の返り値は、与えられた文字列を表す URI 構成要素としてエスケープされた新しい文字列です。
var set1 = ";,/?:@&=+$#";
var set2 = "-_.!~*'()";
var set3 = "ABC abc 123";
console.log(encodeURIComponent(set1)); // %3B%2C%2F%3F%3A%40%26%3D%2B%24%23
console.log(encodeURIComponent(set2)); // -_.!~*'()
console.log(encodeURIComponent(set3)); // ABC%20abc%20123
文字列をエンコードする - encodeURIComponent