用JS进行进制转换

作者: harde 分类: JavaScript,前端相关 发布时间: 2013-06-17 16:51

parseInt()是一个很常用的方法,不过不知道有多少朋友知道它实际上是有2个参数,而不是1个。

parseInt(string, radix)
参数 描述
string 必需。要被解析的字符串。
radix 可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间。
如果省略该参数或其值为 0,则数字将以 10 为基础来解析。如果它以 “0x” 或 “0X” 开头,将以 16 为基数。
如果该参数小于 2 或者大于 36,则 parseInt() 将返回 NaN。

来看下效果

>>> parseInt(11)
11
>>> parseInt(11,2)
3
>>> parseInt(11,8)
9
>>> parseInt(11,16)
17

同样是11,添加了2、8、16之后,就编程了相对进制所对应的10进制数值了。
再来看看这样的

>>> parseInt(11)
11
>>> parseInt(011)
9
>>> parseInt(0x11)
17

很有意思是不,当传入的数值以0开头时,parseInt方法会把数值当做8进制处理。以0x开头时,会当做16进制处理。
所以当当使用parseInt时最好指定进制。

parseInt(11,10)

就像这样。

OK,写个小玩意。获取英文字符的ASCII码,然后转换成2进制。
function getBinary(str,split){
var out=””;
var code = 0;
for(var i=0;i

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注