完成函式hextorgb
,它的作用將16進製制顏色值轉換成rgb值:
hextorgb('#f0f0f0') // => rgb(240, 240, 240)
hextorgb('#9fc') // => rgb(153, 255, 204)
hextorgb('無效顏色') // => null
實現要明確16進製制和rgb值的區別,16進製制顏色是用3個十六進製制值代表顏色,對應的值轉換為10進製數就是rgb值
其他進製轉換為10進製的方法是使用parseint
,10進製轉換為其他進製的方法是使用tostring()
還要注意對非法值的處理,用正則處理比較簡單,還要注意16進製制簡寫的處理
const hextorgb = (hex) =>
// 過濾非法輸入
if (!/^#[0-9abcdefabcdef]$/.test(hex))
let purestr = hex.slice(1);
// 處理簡寫形式
if (purestr.length === 3)
let result = ;
for (let i = 0; i < purestr.length; i += 2)
return `rgn($)`
};
使用16進製制顏色值
通常情況下我們是直接使用類似於 ee1289這樣的 來直接表示rgb顏色的 uicolor colorwithred 0xee 255.0 green 0x12 255.0 blue 0x89 255.0 alpha 1 這樣呼叫真是太繁瑣了,所以封裝了乙個小方法來直接呼叫 獲取顏色 uicolor...
移動開發 十進位制轉顏色
一般色值都是16進製制數字,專案中有時候回碰到10進製數字轉顏色。ios 之前網上找的,android的是通過規律自己寫的。轉換的原理 1.將10進製轉成16進製制 2.將16進製制的字串兩兩拆分 3.通過rgb顯示顏色,正常的16進製制直接可以顯示,轉換的需要把r和b對應的值進行替換。4.在前面加...
基礎練習 十六進製制轉八進位制
基礎練習 十六進製制轉八進位制 時間限制 1.0s 記憶體限制 512.0mb 錦囊1 錦囊2 錦囊3 問題描述 給定n個十六進製制正整數,輸出它們對應的八進位制數。輸入格式 輸入的第一行為乙個正整數n 1 n 10 接下來n行,每行乙個由0 9 大寫字母a f組成的字串,表示要轉換的十六進製制正整...