Visit Mozilla.org

Core JavaScript 1.5 Reference:Global Functions:encodeURIComponent

出典: MDC



目次

[編集] 概要

コア関数

特定の文字の実体を、UTF-8 文字エンコーディングで表された 1 つ、2 つ、あるいは、3 つのエスケープシーケンスに置き換えることで、統一資源識別子 (Uniform Resource Identifier (URI)) の要素をエンコードします。

[編集] 構文

var encoded = encodeURIComponent(str);

[編集] 引数

str 
URI の要素。

[編集] 説明

encodeURIComponent は、次を除く全ての文字をエスケープします。: アルファベット、数字、- _ . ! ~ * ' ( )

ユーザ入力パラメータを、URIの一部としてサーバに渡す場合には【訳注: GETメソッド】、サーバに想定外のリクエストが渡らないように、encodeURIComponent で処理する必要があります。  例えば、ユーザーがパラメータ comment の値として "Thyme &time=again" を入力するかもしれません。 このパラメータ 【訳注: キーと値の組】encodeURIComponent で処理しておかないと、サーバには comment=Thyme%20&time=again という表現が渡ってしまいます。 ここで、アンパサンド '&' と 等号 '=' は、新しいパラメータのキーと値を表すことに注意してください。 つまり、1つのパラメータ(キー comment とその値 "Thyme &time=again") を送信したつもりが、 実際には 2つのパラメータ(キー comment とその値 "Thyme "と 、そして もう一つのキー time とその値 "again")が送信されてしまいます【訳注: キーや値の文字列中の'&'をエンコード処理しておかないと、サーバは'&'を新しいパラメータの開始記号と解釈してしまう】


[編集] 参照

decodeURI, decodeURIComponent, encodeURI