今天在整理 js編碼解碼方法時,在網上搜資料,發現一篇文章講的不錯,講解的非常簡單明了,於是乎就想轉載過來,卻發現無法轉載到博客園,最后只能卑鄙的摘抄過來。js編碼解碼就是將一些對URL和數據庫敏感的在使用時容易被過濾掉,或者容易對數據庫造成注入威脅的字符串進行編碼,在使用時再進行解碼,原理很簡單用法也很簡單,正好下面這篇文章講解的非常明了利索。原文地址是http://blog.csdn.net/wwwchenbing/article/details/3409183,希望作者不要告我侵權。
返回一個可在所有計算機上讀取的編碼 String 對象。
function escape(charString : String) : String
參數:charString
必選:要編碼的任何 String 對象或文本。
備注:
escape 方法返回一個包含 charstring 內容的字符串值(Unicode 格式)。所有空格、標點、重音符號以及任何其他非 ASCII 字符都用 %xx 編碼替換,其中 xx 等於表示該字符的十六進制數。例如,空格返回為“%20”。
字符值大於 255 的字符以 %uxxxx 格式存儲。
注意 escape 方法不能用來對“統一資源標識符”(URI) 進行編碼。對其編碼應使用 encodeURI 和 encodeURIComponent 方法。(繼續往下看)
適用於:Global 對象
2.encodeURI()
返回編碼為有效的統一資源標識符 (URI) 的字符串。
function encodeURI(URIString : String) : String
參數:URIString
必選:表示編碼 URI 的字符串。
備注:
encodeURI 方法返回一個已編碼的 URI。如果將編碼結果傳遞給 decodeURI,則將返回初始的字符串。encodeURI 不對下列字符進行編碼:“:”、“/”、“;”和“?”。請使用 encodeURIComponent 對這些字符進行編碼。
適用於:Global 對象
3.encodeURIComponent()
返回編碼為統一資源標識符 (URI) 的有效組件的字符串。
function encodeURIComponent(encodedURIString : String) : String
參數:encodedURIString。
必選:表示編碼 URI 組件的字符串。
備注:
encodeURIComponent 方法返回一個已編碼的 URI。如果將編碼結果傳遞給 decodeURIComponent,則將返回初始的字符串。因為 encodeURIComponent 方法將對所有字符編碼,請注意,如果該字符串代表一個路徑,例如 /folder1/folder2/default.html,則其中的斜杠也將被編碼,這樣,當該字符串作為請求發送到 Web 服務器時它將是無效的。如果字符串中包含多個 URI 組件,請使用 encodeURI 方法進行編碼。
適用於:Global 對象
下面對應的是相應的解碼方法
1.unescape()
從用 escape 方法編碼的 String 對象中返回已解碼的字符串。
function unescape(charString : String) : String
參數:charString
必選:要解碼的 String 對象或文本。
備注:
unescape 方法返回一個包含 charstring 內容的字符串值。所有以 %xx 十六進制形式編碼的字符都用 ASCII 字符集當中等效的字符代替。
以 %uxxxx 格式(Unicode 字符)編碼的字符用十六進制編碼 xxxx 的 Unicode 字符代替。
注意 unescape 方法不應用於解碼“統一資源標識符”(URI)。請改用 decodeURI 和 decodeURIComponent 方法。
適用於:Global 對象
2.decodeURI()
返回一個已編碼的統一資源標識符 (URI) 的非編碼形式。
function decodeURI(URIstring : String) : String
參數:URIstring
必選:表示編碼 URI 的字符串。
備注:
使用 decodeURI 方法代替已經過時的 unescape 方法。
decodeURI 方法返回一個字符串值。
如果 URIString 無效,將發生 URIError。
適用於:Global 對象
3.decodeURIComponent()
返回統一資源標識符 (URI) 的一個已編碼組件的非編碼形式。
function decodeURIComponent(encodedURIString : String) : String
必選: encodedURIString 參數是一個表示已編碼的 URI 組件的值。
備注:
URIComponent 是一個完整的 URI 的一部分。
如果 encodedURIString 無效,則將產生 URIError。
如果要查看編碼后的效果,可把編碼結果賦予一個變量,用下面方法查看:
1.alert(); 彈出對話框
2.document.write(); 寫入到文檔,位置自己選
3.console.log(); fifebug查看
