js 處理URL實用技巧
更新時間:2010年11月23日 21:19:11 作者:
escape()、encodeURI()、encodeURIComponent()三種方法都能對一些影響URL完整性的特殊字符進行過濾。
但后兩者是將字符串轉(zhuǎn)換為UTF-8的方式來傳輸,解決了頁面編碼不一至導致的亂碼問題。
例如:發(fā)送頁與接受頁的編碼格式(Charset)不一致(假設發(fā)送頁面是GB2312而接收頁面編碼是UTF-8),使用escape()轉(zhuǎn)換傳輸中文字串就會出現(xiàn)亂碼問題。
以下是JS下對URL進行編/解碼的各種方法:
escape方法:就對@*+/ A-Z 0-9 a-z這些字符不編碼,其它非ASCII字符都會編碼以%XX編碼替換,解碼使用unescape,escape 方法不能用來對“統(tǒng)一資源標識符”(URI) 進行編碼。對其編碼應使用 encodeURI 和encodeURIComponent 方法。encodeURI():對! @ # $ & * ( ) = : / ; ? + ' A-Z 0-9 a-z,其它的字符都會被編碼,解碼使用decodeURI();
如果想使更多的字會被編碼,例:/..,請使用encodeURIComponent()方法,被此方法編碼后,參數(shù)傳遞給服務器就是一種無效的字符,解碼使用decodeURIComponent()
例如:發(fā)送頁與接受頁的編碼格式(Charset)不一致(假設發(fā)送頁面是GB2312而接收頁面編碼是UTF-8),使用escape()轉(zhuǎn)換傳輸中文字串就會出現(xiàn)亂碼問題。
以下是JS下對URL進行編/解碼的各種方法:
escape方法:就對@*+/ A-Z 0-9 a-z這些字符不編碼,其它非ASCII字符都會編碼以%XX編碼替換,解碼使用unescape,escape 方法不能用來對“統(tǒng)一資源標識符”(URI) 進行編碼。對其編碼應使用 encodeURI 和encodeURIComponent 方法。encodeURI():對! @ # $ & * ( ) = : / ; ? + ' A-Z 0-9 a-z,其它的字符都會被編碼,解碼使用decodeURI();
如果想使更多的字會被編碼,例:/..,請使用encodeURIComponent()方法,被此方法編碼后,參數(shù)傳遞給服務器就是一種無效的字符,解碼使用decodeURIComponent()
相關文章
JavaScript中json數(shù)組查找數(shù)據(jù)的幾種方式(含模糊查找)
這篇文章主要給大家介紹了關于JavaScript中json數(shù)組查找數(shù)據(jù)的幾種方式,文中包括模糊查找,文中給出了詳細的代碼示例,對大家學習或者使用json具有一定的參考借鑒價值,需要的朋友可以參考下2023-09-09
JavaScript調(diào)用ajax獲取文本文件內(nèi)容實現(xiàn)代碼
這篇文章主要介紹了JavaScript調(diào)用ajax獲取文本文件內(nèi)容的方法,需要的朋友可以參考下2014-03-03
JavaScript 節(jié)流函數(shù) Throttle 詳解
這篇文章主要為大家詳細介紹了JavaScript 節(jié)流函數(shù) Throttle,感興趣的小伙伴們可以參考一下2016-07-07
bootstrap-table實現(xiàn)服務器分頁的示例 (spring 后臺)
本篇文章主要介紹了bootstrap-table實現(xiàn)服務器分頁的示例 (spring 后臺),具有一定的參考價值,有興趣的可以了解一下2017-09-09

