encodeURI和encodeURIComponent區別
阿新 • • 發佈:2018-04-13
script mage asc 分享 png AI encodeuri con image
var str1="http://baidu.com"; var str2="http://baidu.com/~#$&*(_+"; var str3="http://baidu.com/my page"; console.log(encodeURI(str1)); console.log(encodeURI(str2)); console.log(encodeURI(str3));
運行結果:
encodeURI() 不會轉義:;/?:@&=+$,#-_.!~*‘(),但會對空格轉義,目的是對 URI 進行完整的編碼
var str4="http://baidu.com"; var str5="http://baidu.com/:;/?:@&=+$,#"; var str6="http://baidu.com/my page/04563"; var str7="http://baidu.com/-_.!~*‘()"; console.log(encodeURIComponent(str4)); console.log(encodeURIComponent(str5)); console.log(encodeURIComponent(str6)); console.log(encodeURIComponent(str7));
運行結果:
http%3A%2F%2Fbaidu.com
http%3A%2F%2Fbaidu.com%2F%EF%BC%9A%3B%2F%3F%3A%40%26%3D%2B%24%2C%23
http%3A%2F%2Fbaidu.com%2Fmy%20page%2F04563
http%3A%2F%2Fbaidu.com%2F-_.!~*‘()
encodeURIComponent() 不會對這些 ASCII 標點符號進行編碼: - _ . ! ~ * ‘ ( ),目的是將轉義用於分隔 URI 各個部分的標點符號
兩個方法的解碼分別對應decodeURI和decodeURIComponent
encodeURI和encodeURIComponent區別