JS實現16進制和RGB轉換


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

前置知識點: 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(',')
 
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM