作為前端開發而言,不可避免的會遇到顏色取值,字符串和數字直接的轉換,博主為此寫了一個小工具,實現色值之間的在線轉換。
前置知識點: 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(',')