JavaScript中字符串與Unicode編碼互相轉(zhuǎn)換的實現(xiàn)方法
本文實例講述了JavaScript中字符串與Unicode編碼互相轉(zhuǎn)換的實現(xiàn)方法。
unicode的表示方式有兩種,一種為web頁面中使用的,一種為我們一般采用的編碼方式
第一種:"成都 "Unicode編碼方式 &+編號是網(wǎng)頁里引用unicode字符的方法,編號為十進制的在unicode中的編號
第二種:\u6210\u90fd 表示的也是成都,采用的也是unicode編碼格式,是java編程中使用的編碼格式
它以\u開頭,后接四位16進制的數(shù)。
分享給大家供大家參考,具體如下:
這段代碼演示了JavaScript中字符串與Unicode編碼的轉(zhuǎn)換:
// 為了控制臺的演示方便, 變量沒有添加 var 定義 // 實際編程中請避免 // 字符串 str = "中文"; // 獲取字符 char0 = str.charAt(0); // "中" // 數(shù)字編碼值 code = str.charCodeAt(0); // 20013 // 編碼互轉(zhuǎn) str0 = String.fromCharCode(code); // "中" // 轉(zhuǎn)為16進制數(shù)組 code16 = code.toString(16); // "4e2d" // 變成字面量表示法 ustr = "\\u"+code16; // "\u4e2d" // 包裝為JSON jsonstr = '{"ustr": "'+ ustr +'"}'; //'{"ustr": "\u4e2d"}' // 使用JSON工具轉(zhuǎn)換 obj = JSON.parse(jsonstr); // Object {ustr: "中"} // ustr_n = obj.ustr; // "中"
如果是一組字符串,則需要使用到 for 循環(huán)來處理。
其中,我們使用了JSON工具來進行轉(zhuǎn)換。
如果要兼容 IE6等瀏覽器,則可用如下形式進行解析:
if("object" === typeof message){ // 如果是對象,則不進行轉(zhuǎn)換 } else if(window["JSON"]){ message = JSON.parse(message); } else { // IE6, IE7 message = eval("("+ message + ")"); }
控制臺調(diào)試結(jié)果如下所示:
下面接著分享正則方式將&#數(shù)字形式轉(zhuǎn)換為字符串或中文的方法
<script> //帶;號 var str="https://www.jb51.net/article/1.htm"; //不帶分號 var str2="https://www.jb51.net/article/1.htm"; function uncode(str) { return str.replace(/&#(x)?([^&]{1,5});?/g, function (a, b, c) { return String.fromCharCode(parseInt(c, b ? 16 : 10)); }) } document.write(uncode(str)); document.write("<br>"); document.write(uncode(str2)); </script>
希望本文所述對大家JavaScript程序設(shè)計有所幫助。
- Python3的unicode編碼轉(zhuǎn)換成中文的問題及解決方案
- js字符串與Unicode編碼互相轉(zhuǎn)換
- python實現(xiàn)unicode轉(zhuǎn)中文及轉(zhuǎn)換默認編碼的方法
- PHP實現(xiàn)Unicode編碼相互轉(zhuǎn)換的方法示例
- JS實現(xiàn)的Unicode編碼轉(zhuǎn)換操作示例
- .Net(c#)漢字和Unicode編碼互相轉(zhuǎn)換實例
- C#將Unicode編碼轉(zhuǎn)換為漢字字符串的簡單方法
- PHP如何實現(xiàn)Unicode和Utf-8編碼相互轉(zhuǎn)換
- js unicode 編碼解析關(guān)于數(shù)據(jù)轉(zhuǎn)換為中文的兩種方法
- C++11 Unicode編碼轉(zhuǎn)換
相關(guān)文章
微信小程序使用this.setData()遇到的問題及解決方案詳解
this.setData估計是小程序中最經(jīng)常用到的一個方法,但是要注意其實他是有限制的,忽略這些限制的話,會導(dǎo)致數(shù)據(jù)無法更新,下面這篇文章主要給大家介紹了關(guān)于微信小程序使用this.setData()遇到的問題及解決方案,需要的朋友可以參考下2022-08-08JavaScript實現(xiàn)二叉樹的先序、中序及后序遍歷方法詳解
這篇文章主要介紹了JavaScript實現(xiàn)二叉樹的先序、中序及后序遍歷方法,結(jié)合實例形式總結(jié)分析了javascript二叉樹的先序、中序及后序遍歷實現(xiàn)方法與相關(guān)操作注意事項,需要的朋友可以參考下2017-10-10JavaScript?映射器?array.flatMap()
這篇文章主要介紹了JavaScript?映射器?array.flatMap(),array.flatMap()是一個映射函數(shù),它接收一個數(shù)組和一個映射函數(shù),然后返回一個新的映射數(shù)組,下面進入文章了解具體內(nèi)容2022-02-02