エスケープによってエンコードされない文字は 69 文字あります: *、,-、.、/、@、_、0-9、a-z、A-Z
encodeURI には 82 個の非エンコード文字があります: !、#、$、&、'、(,)、*、,,, -,.,/,:,;,=,?,@,_,~, 0 ~ 9、a ~ z、A ~ Z
encodeURIComponent には 71 個のエンコードされていない文字があります: !、'、(,)、*、-、.、_、~、0-9、a-z、A-Z
1.
JS: エスケープ :
js でデータを使用するときにエスケープを使用できます
例: コレクション内の履歴レコード。
0-255以外のUnicode値をエンコードした場合は、%u****形式で出力されます。それ以外の場合、escape、encodeURI、encodeURIComponentのエンコード結果は同じになります。
unescape を使用してデコードします
C#:
HttpUtility.UrlEncode
HttpUtility.UrlDecode
2.
JS: encodeURI:
URL ジャンプを実行するときに encodeURI 全体を使用できます
例: Location.href=encodeURI("http://cang.baidu.com/do/s?word=Baidu&ct=21" );
decodeURI() を使用してデコードします;
C#: decodeURIComponent
3.
JS: encodeURIComponent:
結合された URL が # などの特殊文字で切り詰められないように、パラメーターを渡すときに encodeURIComponent を使用する必要があります。
例:
decodeURIComponent() を使用してデコードします
C#:
[HttpContext.Current.]Server.UrlDecode
[HttpContext.Current.]Server.UrlEncode