URL、クエリの値、フォーム本文をパーセントエンコードし、または元に戻します。初期値の UTF-8 は encodeURIComponent と同じです。相手が Shift_JIS など別の文字コードなら、そこで切り替えてください。
パスのスラッシュは残し、クエリ値の中のスラッシュは %2F にします。フォームの空白は +、通常のクエリの空白は %20 です。全部を同じ関数にかけると、リンクが別のページを開きます。
encodeURIComponent。検索語や ID、戻り先に使います。encodeURI。: / ? # は残します。すでに完全なアドレスがあるときです。+。POST の本体であって、リンクではありません。値の中の本当のプラスは %2B にしないと、サーバは空白として読みます。& と = も値の中では符号化しないと、次のパラメータが始まります。初期値は UTF-8 で、encodeURIComponent と同じです。漢字は各バイトが % と十六進二桁になります。「北京」は一つのエスケープではありません。相手が Shift_JIS なら文字コードを切り替えると、同じ文章でも別のパーセント列になります。Hex は欄の十六進バイトをパーセント符号化します。
完成した https:// を「クエリの値」で符号化すると、コロンとスラッシュまで置き換わり、ブラウザはアドレスとして扱いません。部品ごとに符号化してから繋ぎます。バイト列は 文字列からバイト、別方式は Base64 です。
フォーム本文を選んでいます。リンクなら「クエリの値」に戻してください。
二回符号化されています。読めるところまで、もう一度デコードします。