js 處理URL實用技巧

2022-03-08 16:18:12 字數 589 閱讀 5531

escape()、encodeuri()、encodeuricomponent()三種方法都能對一些影響url完整性的特殊字元進行過濾。

但後兩者是將字串轉換為utf-8的方式來傳輸,解決了頁面編碼不一至導致的亂碼問題。 

例如:傳送頁與接受頁的編碼格式(charset)不一致(假設傳送頁面是gb2312而接收頁面編碼是utf-8),使用escape()轉換傳輸中文字串就會出現亂碼問題。 

以下是js下對url進行編/解碼的各種方法: 

escape方法:就對@*+/ a-z 0-9 a-z這些字元不編碼,其它非ascii字元都會編碼以%xx編碼替換,解碼使用unescape,escape 方法不能用來對「統一資源識別符號」(uri) 進行編碼。對其編碼應使用 encodeuri 和encodeuricomponent 方法。encodeuri():對! @ # $ & * ( ) = : / ; ? + ' a-z 0-9 a-z,其它的字元都會被編碼,解碼使用decodeuri(); 

如果想使更多的字會被編碼,例:/..,請使用encodeuricomponent()方法,被此方法編碼後,引數傳遞給伺服器就是一種無效的字元,解碼使用decodeuricomponent()

js之async, await實用技巧

同步變異步 看到這有人就奇怪了,好好的同步 為啥要變異步?其實我也不想,這有可能是為了後續的擴充套件。比如如下場景 有個判斷使用者登入的方法islogin,我們可以在首次進入頁面時將登入資訊儲存起來,比如使用localstorage,這樣就可以用locastorage.getitem islogin...

常用的批處理實用技巧

網上流傳著很多dos小技巧,但是,以現在的眼光重新審視,它們有些並不適用於批處理。編寫批處理 一年多來,本人積累了一些實用的批處理 編寫技巧,現發出來大家一起分享。若能善用這些 將會大大簡化各位的編碼工作,並會一定程度上提公升 的執行效率。1 不顯示 執行期間的各種提示資訊 很多時候,為了使得螢幕上...

Linux 實用技巧

值得一提的是vim是慈善軟體 charityware 如有贊助或評比得獎,所得將全部救助烏干達孤兒,軟體使用是免費的,歡迎手頭有點閒錢的使用者捐款贊助,如果沒銀子也沒關係,至少當有評比活動時 有獎金可拿的那種 應用技巧一 快速注釋 1 連續行注釋 使用vim vi編輯shell指令碼,在進行除錯的時...