js字符串與十六進制相互轉換


1.字符串(漢字)轉換為十六進制

  主要使用字符串.charCodeAt()方法,此方法返回一個字符的Unicode值,再用toString(16)方法,該方法是先將數字對象轉換為二進制,再把二進制轉化為16進制.

var str = "趙兄托我幫你辦點事";
var val = "";
for(var i = 0; i < str.length; i++){
	if (val == "") 
		val = str.charCodeAt(i).toString(16);
	else 
		val += "," + str.charCodeAt(i).toString(16);
}
alert(val);    //8d75,5144,6258,6211,5e2e,4f60,529e,70b9,4e8b


 

 

2.十六進制轉化為字符串(漢字)  

  主要使用Object.fromCharCode()方法,此方法將Unicode碼轉換為與之對應的字符.先將字符轉化為數字,parseInt(string,radix)實現,由於這些字符都是十六進制對應的字符,所以radix也應為16

  

var str = "8d75,5144,6258,6211,5e2e,4f60,529e,70b9,4e8b";
var val="";
var arr = str.split(",");
for(var i = 0; i < arr.length; i++){
  val += String.fromCharCode(parseInt(arr[i],16));
}
alert(val);    //趙兄托我幫你辦點事

  

 

  

 

 

 其實這其中存在兩對轉換

  一是:  str.charCodeAt(i)和String.fromCharCode(Unicode編碼).

  二是:  toString(可選轉換為2,8,10,16位字符)和parseInt(字符串,默認轉10位).

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM