JavaScriptにエンコードとデコードのURL

ここではURLはメソッドをエンコードおよびデコードするための3つのJavaScriptの下に要約されています。

なぜ、エンコードとデコードすべきURL

のみ[0-9 [AZ] $ - 。!_ + *「()、]同様に予約語の一部として、他の文字がエンコードされていない場合、我々は、URLに直接エンコードすることができないのさまざまなにつながる可能性があり問題。

例としては、検索キーワードなど中国の検索エンジンとして、エンコードとデコード見つけることは容易であり、その後、URLをコピーして、URLをトランスコードすることが判明している貼り付けます。

エスケープ()和アンエスケープ()

原理:ASCII文字、数字、句読点のほかに - エンコードされた以外の文字は、[@ * _ + /。]。

编码:エスケープ( 'http://www.baidu.com?name=yanggb@blog=yanggb')

结果: "http%3A//www.baidu.com%3Fname%3Dyanggb@blog%3Dyanggb"

コーディング:エスケープ(「・ヤング最高水準」)

結果: "%u6768%u51A0%u6807"

解码:アンエスケープ('http%3A//www.baidu.com%3Fname%3Dyanggb@blog%3Dyanggb ')

结果: "http://www.baidu.com?name=yanggb@blog=yanggb"

コーディング:アンエスケープ( '%u6768%u51A0%u6807')

結果:「ヤン最高水準を。」

decodeURI和encodeURI()()

encodeURI()は、実際のURLエンコードされた関数へのJavascriptです。

[:; +「/!?)@#$&*(=:]原理:リターンはエンコードされた文字ではありません、有効なURI(Uniform Resource Identifier)で文字列としてエンコード。  

コーディング:encodeURIを( 'http://www.baidu.com?name= = yanggbブログ@ヤン上付きクラウン')

结果: "http://www.baidu.com?name=%E6%9D%A8%E5%86%A0%E6%A0%87@blog=yanggb"

解码:decodeURI( 'http://www.baidu.com?name=%E6%9D%A8%E5%86%A0%E6%A0%87@blog=yanggb')

結果:「http://www.baidu.com?name=ヤン最高水準@ブログ= yanggb」

encodeURIComponentで()和は、decodeURIComponent()

原理:URLの一部ではなく全体のURLエンコード方式のため、個別にエンコードされますエンコードASCIIの文字と数字、もないこれらのASCII句読点コードは以下となります。 - _〜*「(。! )。

コーディング:encodeURIComponentでの( 'http://www.baidu.com?name= = yanggbブログ@ヤン上付きクラウン')

结果: "HTTP%3A%2F%2Fwww.baidu.com%3Fname%3D%E6%9D%A8%E5%86%A0%E6%A0%87%40blog%3Dyanggb"

解码:は、decodeURIComponent( 'のhttp%3A%2F%2Fwww.baidu.com%3Fname%3D%E6%9D%A8%E5%86%A0%E6%A0%87%40blog%3Dyanggb')

結果:「http://www.baidu.com?name=ヤン最高水準@ブログ= yanggb」

 

「私はこの世界を止めるように鋭い、私は悲しみと喜びと同じように、この世界で温かい人があることを信じていました。」

おすすめ

転載: www.cnblogs.com/yanggb/p/12021441.html