雨荷o初夏
我知道的前端javascript的16進制可用於兩個方面:
字符實體
顏色表
字符實體
在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>