JS 16进制有什么用?

雨荷o初夏


我知道的前端javascript的16进制可用于两个方面:

  1. 字符实体

  2. 颜色表

字符实体

在html中有一类字符被称为转义序列(escape sequence),它们并不是编码。以三种符号「&」「」「」开头。

从html4开始,后面两行会被浏览器解析为“中国”。有兴趣的可以去试试,所以了解了这些,我们可以通过JS去将中文字符翻译成这些代码,防止恶意爬虫解析。

颜色表

这个是主要是因为CSS中颜色表用的就是以「#」开头的16进制代码表示的。例如「#FFFFFF」就会被解析为白色。在一些在线游戏或者动画效果中,可以使用JS变换颜色。


李老师tome


js的进制转换, 分为2进制,8进制,10进制,16进制之间的相互转换, 我们直接利用 对象.toString()即可实现:

运行下面代码

//10进制转为16进制(10).toString(16) // =>"a"

//8进制转为16进制(012).toString(16) // =>"a"

//16进制转为10进制(0x16).toString(10) // =>"22"

//16进制转为8进制(0x16).toString(8) // =>"26"

//10进制转为2进制 //=>(1111).toString(2) // => "10001010111"

//8进制转为2进制 //=>(01111).toString(2) //=>"1001001001"

//16进制转为2进制 //=>(0x16).toString(2) // => "10110"

  如果要处理2进制到10进制,16进制到10进制,8进制到10进制, 需要用了paresInt这个方法:

运行下面代码

//2进制到10进制;parseInt(10,2) //=>2

//2进制到10进制;parseInt(100,2) //=>4

//16进制到10进制parseInt(12, 16) //=>18

//8进制到10进制parseInt(12,8); //=>10

  进制转换

  如果要实现进制之间的转换, 可以利用parseInt方法, 先转化为10进制, 然后再利用toString(参数), 转化成不同的进制;

  利用toString和parseInt方法可以实现一个进制转化的工具:

运行下面代码

<title>无标题文档/<title>



*注:存在非法字符时,我们只截断有效字符进行转换/<font>

  简单加密解密

  把字符串转化成unicode, 然后再把unicode转成不同的进制 , 实现代码加密处理:

运行下面代码

<title>/<title>


分享到:


相關文章: