【JavaScript ECMAScript】escape::escape()関数の使い方
escape()関数の使い方について、初心者にもわかりやすく解説します。
基本的な使い方
escape()関数は、JavaScriptで文字列をURI(Uniform Resource Identifier、Webアドレスなどを指します)に安全に含めるためにエンコードする関数です。この関数は、ASCII文字以外の文字や、URL内で特別な意味を持つ特定の記号(例:スペースなど)を、%の後に2桁の16進数を続ける形式(%xx)に変換します。これにより、WebブラウザやサーバーがURIを正しく解釈できるようになります。
たとえば、日本語の文字や記号を含む文字列をWebアドレスのパラメータとして渡す際などに利用されました。しかし、このescape()関数は現在、非推奨(deprecated)となっています。これは、ECMAScriptの将来のバージョンで削除される可能性があり、新しいWeb標準に完全に準拠していないためです。
現在では、より安全で標準に準拠したencodeURI()関数やencodeURIComponent()関数を使用することが強く推奨されています。encodeURI()関数はURI全体をエンコードする際に使用され、URIの構文を壊さないように一部の予約文字はエンコードしません。一方、encodeURIComponent()関数は、URIの構成要素(例えば、パスセグメントやクエリパラメータの値)をエンコードする際に使用され、ほとんどすべての特殊文字をエンコードします。
したがって、新しいアプリケーションを開発する際には、escape()関数ではなく、用途に応じてencodeURI()またはencodeURIComponent()関数を使用すべきです。
構文(syntax)
1escape(string);
引数(parameters)
str
- str: string: URLエンコードしたい文字列
戻り値(return)
String
URLエンコードされた文字列を返します。この文字列は、URLのパス部分で使用できない文字がパーセントエンコーディングされた形になっています。