javascript文字列コード

1636 ワード

encodeURI() 関数は文字列をURIとしてエンコードすることができます.
この方法はASCII文字と数字を符号化しないし、ASCII句読点も符号化しない.()
この方法はURIを完全に符号化することを目的としており、URIには以下のような特別な意味を持つASCII句読点に対して、エンコーディング()関数は転送されません.
 
この例のzhognでは、encodeURI()を使ってURIをエンコードします.
<script type="text/javascript">

document.write(encodeURI("http://www.w3school.com.cn")+ "<br />")
document.write(encodeURI("http://www.w3school.com.cn/My first/"))
document.write(encodeURI(",/?:@&=+$#"))

</script>
出力:
http://www.w3school.com.cn
http://www.w3school.com.cn/My%20first/
,/?:@&=+$#
 
 
encodeURIComponent() 関数は文字列をURIコンポーネントとしてエンコードすることができます.
この方法はASCII文字と数字を符号化しないし、ASCII句読点も符号化しない.()
他の文字(例:;/?:@@=+、葏などのURIコンポーネントを区切るための句読点)は、1つまたは複数の16進数の変換シーケンスによって置き換えられます.
 
本例では、ENcodeURIComponentを用いてURIを符号化する.
<script type="text/javascript">

document.write(encodeURIComponent("http://www.w3school.com.cn"))
document.write("<br />")
document.write(encodeURIComponent("http://www.w3school.com.cn/p 1/"))
document.write("<br />")
document.write(encodeURIComponent(",/?:@&=+$#"))

</script>
出力:
http%3A%2F%2Fwww.w3school.com.cn
http%3A%2F%2Fwww.w3school.com.cn%2Fp%201%2F
%2C%2F%3F%3A%40%26%3D%2B%24%23
 
encodeURIComponent()関数とencodeURI()関数の違いに注意してください.前者は、そのパラメータがURIの一部(例えば、プロトコル、ホスト名、経路、または照会文字列)であると仮定しています.したがって、エンコーディング関数は、URIの各部分を区切る句読点記号に変換される.