JavaScript进制转换

一. 进制转换

JavaScript 全局函数 parseInt(string, radix); //TODO详解
string 必需。要被解析的字符串。
radix 可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间。

1. 示例一,将二进制、八进制、十六进制数字解析为十进制数字
parseInt(0101,2);//NaN
parseInt("0101")//101
parseInt("0101",2)//5
parseInt("0101",8)//65
parseInt("0101",10)//101
parseInt("0101",16)//257
2. 示例二,将十进制数字解析为二进制、八进制、十六进制数字
var x=999;
x.toString(2);//"1111100111"
x.toString(8);//"1747"
x.toString(16);//"3e7"
3. 示例三,二进制、八进制、十六进制数字相互转换(原理,先转化为十进制)
parseInt('ff',16).toString(2);//十六进制"ff" 转 二进制 "11111111"
parseInt("11111111",2).toString(8);//二进制"11111111" 转 八进制 "377"

二. 字符串 和 十六进制 互相转换

  1. 字符串转换为十六进制
//先将字符串编码为Unicode码,然后再将Unicode码的数字转化为 十六进制
var str = "wanshaobo";
"wanshaobo".charCodeAt(i);//119 97 110 ...
"wanshaobo".charCodeAt(i).toString(16);//77 61 6e 73 68 61 6f 62 6f
  1. 十六进制转换为字符串
//先将十六进制转化十进制,然后再将十进制的Unicode码转化为 字符串
var hexStr = "77616e7368616f626f";
hexStr.match(/[\da-f]{2}/gi) ["77", "61", "6e", "73", "68", "61", "6f", "62", "6f"]
parseInt(arr[i],16)//119 97 110 ...
String.fromCharCode(119);//w
String.fromCharCode(97);//a
String.fromCharCode(110);//n
...
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值