欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JS中三種URI編碼方式對比分析

 更新時間:2024年01月03日 09:34:11   作者:LiangSenCheng小森森  
這篇文章主要介紹了JS中三種URI編碼方式對比分析,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧

一、實例比較

數(shù)據(jù)傳遞常需要編碼后傳遞,接收還需反編譯,定義url:

var url = "https://www.cnblogs.com/?username='小森森'&password='666666'";

escape 與 unescape

console.log(escape(url));// 編碼
console.log(unescape(escape(url)));// 解碼

結(jié)果:

https%3A//www.cnblogs.com/%3Fusername%3D%27%u5C0F%u68EE%u68EE%27%26password%3D%27666666%27

encodeURIComponent 與 decodeURIComponent (推薦)

console.log(encodeURIComponent(url));// 編碼
console.log(decodeURIComponent(encodeURIComponent(url)));// 解碼

結(jié)果:

https%3A%2F%2Fwww.cnblogs.com%2F%3Fusername%3D'%E5%B0%8F%E6%A3%AE%E6%A3%AE'%26password%3D'666666'

encodeURI 與 decodeURI

console.log(encodeURI(url));// 編碼
console.log(decodeURI(encodeURI(url)));// 解碼

結(jié)果:

https://www.cnblogs.com/?username='%E5%B0%8F%E6%A3%AE%E6%A3%AE'&password='666666'

二、區(qū)別分析

三種方法都不會對 ASCII 字母、數(shù)字和規(guī)定的特殊 ASCII 標點符號進行編碼,其余都替換為十六進制轉(zhuǎn)義序列.

escape 與 unescape

escape不編碼字符有69個:*,+,-,.,/,@,_,0-9,a-z,A-Z

對字符串全部進行轉(zhuǎn)義編碼,ECMAScript v3 反對使用該方法,對URL編碼勿使用此方法

encodeURIComponent 與 decodeURIComponent

encodeURIComponent不編碼字符有71個:!, ',(,),*,-,.,_,~,0-9,a-z,A-Z

傳遞參數(shù)時需使用encodeURIComponent,組合的url才不會被#等特殊字符截斷

encodeURI 與 decodeURI

encodeURI不編碼字符有82個:!,#,$,&,',(,),*,+,,,-,.,/,:,;,=,?,@,_,~,0-9,a-z,A-Z

進行url跳轉(zhuǎn)時可以整體使用encodeURI,如果URI中含分隔符如 ? 和 #,應使用encodeURIComponent

三、結(jié)論

推薦使用encodeURIComponent

到此這篇關(guān)于JS中三種URI編碼方式比較的文章就介紹到這了,更多相關(guān)js URI編碼內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Bootstrap學習筆記 輪播(Carousel)插件

    Bootstrap學習筆記 輪播(Carousel)插件

    Bootstrap 輪播(Carousel)插件是一種靈活的響應式的向站點添加滑塊的方式。這篇文章主要介紹了Bootstrap學習筆記 輪播(Carousel)插件,需要的朋友可以參考下
    2017-03-03
  • JS基于遞歸實現(xiàn)網(wǎng)頁版計算器的方法分析

    JS基于遞歸實現(xiàn)網(wǎng)頁版計算器的方法分析

    這篇文章主要介紹了JS基于遞歸實現(xiàn)網(wǎng)頁版計算器的方法,結(jié)合實例形式分析了javascript采用遞歸算法實現(xiàn)網(wǎng)頁版計算器的步驟與相關(guān)操作技巧,需要的朋友可以參考下
    2017-12-12
  • 使用?Schema-Utils?對?Webpack?Plugin?進行配置項校驗的簡單用例

    使用?Schema-Utils?對?Webpack?Plugin?進行配置項校驗的簡單用例

    schema-utils?庫用于在?loader?和?plugin?實例化時,對傳入的參數(shù)進行校驗,本文重點給大家介紹使用?Schema-Utils?對?Webpack?Plugin?進行配置項校驗的用例詳解,感興趣的朋友一起看看吧
    2022-03-03
  • JS實現(xiàn)方向鍵切換輸入框焦點的方法

    JS實現(xiàn)方向鍵切換輸入框焦點的方法

    這篇文章主要介紹了JS實現(xiàn)方向鍵切換輸入框焦點的方法,涉及javascript鼠標事件及頁面元素焦點的切換實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-08-08
  • JS延遲加載的幾種方式小結(jié)

    JS延遲加載的幾種方式小結(jié)

    JS延遲加載,也就是等頁面加載完成之后再加載 JavaScript 文件,JS延遲加載有助于提高頁面加載速度,本文小編給大家介紹了JS延遲加載的幾種方式小結(jié),感興趣的小伙伴跟著小編一起來看看吧
    2024-08-08
  • 基于Bootstrap的Metronic框架實現(xiàn)條碼和二維碼的生成及打印處理操作

    基于Bootstrap的Metronic框架實現(xiàn)條碼和二維碼的生成及打印處理操作

    這篇文章主要介紹了基于Bootstrap的Metronic框架實現(xiàn)條碼和二維碼的生成及打印處理操作的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-08-08
  • Javascript Web Slider 焦點圖示例源碼

    Javascript Web Slider 焦點圖示例源碼

    Slider 焦點圖會在很多的網(wǎng)站上見到,在本文為大家詳細介紹下具體的實現(xiàn)過程,下面的源碼大家可以運行下
    2013-10-10
  • JS實現(xiàn)網(wǎng)頁時鐘特效

    JS實現(xiàn)網(wǎng)頁時鐘特效

    這篇文章主要為大家詳細介紹了JS實現(xiàn)網(wǎng)頁時鐘特效,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • 五句話幫你輕松搞定js原型鏈

    五句話幫你輕松搞定js原型鏈

    這篇文章主要給大家介紹了關(guān)于js原型鏈的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-12-12
  • js前端加密庫Crypto-js進行MD5/SHA256/BASE64/AES加解密的方法與示例

    js前端加密庫Crypto-js進行MD5/SHA256/BASE64/AES加解密的方法與示例

    js加密解密可以使用crypto-js它可以進行MD5、SHA-1、SHA-256、Base64、AES、DES、等算法和加密,這是一個對稱加密的庫,可以使用 AES、DES、但沒有rsa等非對稱加密的方法
    2023-12-12

最新評論