位置:首頁 > 軟件操作教程 > 編程開發(fā) > JavaScript > 問題詳情

JavaScript Unicode編碼和解碼

提問人:劉團圓發(fā)布時間:2020-11-24

■知識點

    escape()方法能夠把除ASCII之外的所有字符轉(zhuǎn)換為%xx或%uxxxx (x表示十六進制的數(shù)字)的轉(zhuǎn)義序列。從\u000到\u00ff的Unicode字符由轉(zhuǎn)義序列%xx替代,其他所有Unicode字符由%uxxxx序列替代。unescape()方法能夠?qū)scape()編碼的字符串進行解碼。

    ECMAScriptv 3.0版本推薦使用 encodeURI()和 encodeURIComponent()方法代替 escape()方法,使用decodeURI()和 decodeURIComponent()方法代替 unescape()方法。

    encodeURIComponent()與 encodeURI()方法不同。它們主要區(qū)別在于,encodeURIComponent()方法假定參數(shù)是URI的一部分,例如,協(xié)議、主機名、路徑或查詢字符串。因此,它將轉(zhuǎn)義用于分隔URI各個部分的標點符號,而encodeURIO方法僅把它們視為普通的ASCII字符,并沒有轉(zhuǎn)換。

■實例設(shè)計

【示例1】下面的代碼使用escapeO方法編碼字符串。

var s = "JavaScript 中國"; 

s = escape(s);

console.log (s) ; //返回字符串"JavaScript%u4E2D%u56FD"

可以使用該方法對Cookie字符串進行編碼,避免與其他約定字符發(fā)生沖突,因為Cookie包含的標 點符號是有限制的。

【示例2】下面的代碼使用unescape()方法解碼被escape()方法編碼的字符串。

var s = "JavaScript 中國"; 

s = escape(s);                  //Unicode 編碼

console.log(s);                 //返回字符串"JavaScript%u4E2D%u56FD"

s = unescape(s);              //Unicode 解碼

console.log(s);                 //返回字符串"JavaScript中國"



繼續(xù)查找其他問題的答案?

相關(guān)視頻回答
回復(0)
返回頂部