js字符編碼函數(shù)區(qū)別分析
更新時間:2011年12月28日 23:03:29 作者:
js對文字編碼有3個函數(shù): escape,encodeURI,encodeURIComponent, 對應(yīng)的解碼函數(shù):unescape,decodeURI,decodeURIComponent
1、escape對ansi碼0-255以外的字符進行編碼輸出%u****格式即unicode值,escape 方法返回一個包含了 charstring 內(nèi)容的字符串值( Unicode 格式)。所有空格、標點、重音符號以及其他非 ASCII 字符都用 %xx 編碼代替,其中 xx 等于表示該字符的十六進制數(shù)。例如,空格返回的是 "%20"
escape不編碼字符有69個:*,+,-,.,/,@,_,0-9,a-z,A-Z
2、encodeURI類似escape,用于地址欄編碼
encodeURI不編碼字符有82個:!,#,$,&,',(,),*,+,,,-,.,/,:,;,=,?,@,_,~,0-9,a-z,A-Z
3、encodeURIComponent用于地址欄編碼。將文本字符串編碼為一個統(tǒng)一資源標識符 (URI) 的一個有效組件。它是將中文、韓文等特殊字符轉(zhuǎn)換成utf-8格式的url編碼,如果你的頁面編碼是gb2312的話,服務(wù)器端接收的將是亂碼.
encodeURIComponent不編碼字符有71個:!, ',(,),*,-,.,_,~,0-9,a-z,A-Z
所以js使用數(shù)據(jù)時可以使用escape,對于地址欄數(shù)據(jù),最好用encodeURIComponent進行編碼。
escape不編碼字符有69個:*,+,-,.,/,@,_,0-9,a-z,A-Z
2、encodeURI類似escape,用于地址欄編碼
encodeURI不編碼字符有82個:!,#,$,&,',(,),*,+,,,-,.,/,:,;,=,?,@,_,~,0-9,a-z,A-Z
3、encodeURIComponent用于地址欄編碼。將文本字符串編碼為一個統(tǒng)一資源標識符 (URI) 的一個有效組件。它是將中文、韓文等特殊字符轉(zhuǎn)換成utf-8格式的url編碼,如果你的頁面編碼是gb2312的話,服務(wù)器端接收的將是亂碼.
encodeURIComponent不編碼字符有71個:!, ',(,),*,-,.,_,~,0-9,a-z,A-Z
所以js使用數(shù)據(jù)時可以使用escape,對于地址欄數(shù)據(jù),最好用encodeURIComponent進行編碼。
相關(guān)文章
ES6代碼轉(zhuǎn)ES5詳細教程(babel安裝使用教程)
Babel 是一個廣泛使用的 ES6 轉(zhuǎn)碼器,可以將 ES6 代碼轉(zhuǎn)為 ES5 代碼,從而在老版本的瀏覽器執(zhí)行,這意味著,你可以用 ES6 的方式編寫程序,又不用擔心現(xiàn)有環(huán)境是否支持,這篇文章主要介紹了ES6代碼轉(zhuǎn)ES5教程(babel安裝使用教程),需要的朋友可以參考下2023-01-01
微信小程序?qū)崿F(xiàn)視頻播放器發(fā)送彈幕
這篇文章主要為大家詳細介紹了微信小程序?qū)崿F(xiàn)視頻播放器發(fā)送彈幕,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-04-04

