JS實現16進制和RGB轉換

做爲前端開發而言,不可避免的會遇到顏色取值,字符串和數字直接的轉換,博主爲此寫了一個小工具,實現色值之間的在線轉換。html

前置知識點: parseInt toString前端

parseInt(value ,decidal)  value爲傳值   decidal爲進制數
 
parseInt(110, 2)  =>  6
parseInt(110, 8)  =>  72
parseInt(110, 10)  =>  110
parseInt(110, 16)  =>  272
 
toString 轉換則須要先將數字經過轉換,在經過toString轉換到具體的進制
 
 parseInt(110, 16).toString(8)  =>  '420'
 parseInt(110, 16).toString(16) => '110'
 parseInt(110, 10).toString(16) => '6e' 
當數字是10進制時能夠寫爲 110..toString(16) => '6e'  請注意  110 後面有兩個點,一個點的時候會認爲小數
 
RGB轉16進制
rgb(255,123,20) => #ff7b14
思路:建立一個數組 list list[0] = '#'
list[1] = parseInt(255, 10).toString(16)
list[2] = parseInt(123, 10).toString(16)
list[3] = parseInt(20, 10).toString(16)
結果:list.join('' )
 
16進制轉RGB
 
思路:
ff7b14
分隔成數組 list = ['ff', '7b', '14']
list[0] = parseInt(list[0] , 16)
list[1] = parseInt(list[1] , 16)
list[2] = parseInt(list[2] , 16)
 
結果: list.join(',')
 
相關文章
相關標籤/搜索