JS字符串與二進(jìn)制的相互轉(zhuǎn)化實(shí)例代碼詳解
JS字符串與二進(jìn)制的相互轉(zhuǎn)化的方法,具體代碼如下所示:
//字符串轉(zhuǎn)ascii碼,用charCodeAt(); //ascii碼轉(zhuǎn)字符串,用fromCharCode(); var str = "A"; var code = str.charCodeAt(); var str2 = String.fromCharCode(code);
十進(jìn)制轉(zhuǎn)二進(jìn)制
var a = "i";
console.log(a.charCodeAt()); //105
console.log(a.charCodeAt().toString(2)); //1101001
var a = "我";
console.log(a.charCodeAt()); //25105
console.log(a.charCodeAt().toString(2)); //110001000010001
var a = "我們";
console.log(a.length); //2
var list = a.split("");
console.log(list.length); //2<br>console.log(a.charCodeAt().toString(2)); //110001000010001 100111011101100
//將字符串轉(zhuǎn)換成二進(jìn)制形式,中間用空格隔開
function strToBinary(str){
var result = [];
var list = str.split("");
for(var i=0;i<list.length;i++){
if(i != 0){
result.push(" ");
}
var item = list[i];
var binaryStr = item.charCodeAt().toString(2);
result.push(binartStr);
}
return result.join("");
}
console.log(strToBinary("我們")); //110001000010001 100111011101100
console.log(strToBinary("@%$+")); //1000000 100101 100100 101011
//將二進(jìn)制字符串轉(zhuǎn)換成Unicode字符串
function binaryToStr(str){
var result = [];
var list = str.split(" ");
for(var i=0;i<list.length;i++){
var item = list[i];
var asciiCode = parseInt(item,2);
var charValue = String.fromCharCode(asciiCode);
result.push(charValue);
}
return result.join("");
}
console.log(binaryToStr("110001000010001 100111011101100")); //我們
console.log(binaryToStr("1000000 100101 100100 101011")); //@%$+
PS:下面看下Js之字符串和字節(jié)碼之間的相互轉(zhuǎn)換
代碼
//將字符串轉(zhuǎn)化為二進(jìn)制的數(shù)據(jù)
function strToBinary(str){
var result = [];
var list = str.split("");
for(var i=0;i<list.length;i++){
if(i != 0){
//加空格,分割二進(jìn)制
result.push(" ");
}
var item = list[i];
//將字符串轉(zhuǎn)化為二進(jìn)制數(shù)據(jù)
var binaryStr = item.charCodeAt().toString(2);
result.push(binaryStr);
}
return result.join("");
}
//二進(jìn)制轉(zhuǎn)為字符串
function binaryToStr(str){
var result = [];
//
//通過空格來分開二進(jìn)制的字符
var list = str.split(" ");
for(var i=0;i<list.length;i++){
var item = list[i];
//轉(zhuǎn)為asciicode 碼
var asciiCode = parseInt(item,2);
//轉(zhuǎn)為文字
var charValue = String.fromCharCode(asciiCode);
//添加到集合中
result.push(charValue);
}
//返回結(jié)果
return result.join("");
}
測(cè)試結(jié)果

總結(jié)
以上所述是小編給大家介紹的JS字符串與二進(jìn)制的相互轉(zhuǎn)化實(shí)例代碼詳解,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
相關(guān)文章
UEditor 自定義圖片視頻尺寸校驗(yàn)功能的實(shí)現(xiàn)代碼
UEditor支持單圖、多圖以及視頻上傳,編輯器配置項(xiàng)支持文件格式、文件大小校驗(yàn),對(duì)于文件寬高尺寸校驗(yàn)暫不支持。本文給大家介紹UEditor 自定義圖片視頻尺寸校驗(yàn)功能的實(shí)現(xiàn)代碼,感興趣的朋友一起看看吧2020-10-10
如何利用Promises編寫更優(yōu)雅的JavaScript代碼
如何利用Promises編寫更優(yōu)雅的JavaScript代碼?下面小編就為大家?guī)硪黄肞romises編寫更優(yōu)雅的JavaScript代碼。希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2016-05-05
javascript模擬php函數(shù)in_array
就是判斷一個(gè)元素是否存在于數(shù)組中的函數(shù),既然js里string都有indexOf函數(shù),為什么不在Array對(duì)象里設(shè)置一個(gè)這樣的函數(shù)呢,其實(shí)就用indexOf這個(gè)思想挺好的,不知道制定JS標(biāo)準(zhǔn)的人是基于什么考慮,把這樣一個(gè)如此常用的功能沒考慮在內(nèi)的。2015-04-04
基于JavaScript實(shí)現(xiàn)瀑布流效果
這篇文章主要為大家詳細(xì)介紹了基于JavaScript實(shí)現(xiàn)瀑布流效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03
JavaScript基于數(shù)組實(shí)現(xiàn)的棧與隊(duì)列操作示例
這篇文章主要介紹了JavaScript基于數(shù)組實(shí)現(xiàn)的棧與隊(duì)列操作,結(jié)合實(shí)例形式分析了棧與隊(duì)列的操作原理及javascript使用數(shù)組實(shí)現(xiàn)棧與隊(duì)列的相關(guān)技巧,需要的朋友可以參考下2018-12-12
JS判斷來路是否是百度等搜索索引進(jìn)行彈窗或自動(dòng)跳轉(zhuǎn)的實(shí)現(xiàn)代碼
這篇文章主要介紹了JS判斷來路是否是百度等搜索索引進(jìn)行彈窗或自動(dòng)跳轉(zhuǎn)的實(shí)現(xiàn)代碼的相關(guān)資料,需要的朋友可以參考下2016-10-10

