我们需要编写一个采用十六进制颜色并返回其RGB表示形式的JavaScript函数。
该函数应返回一个包含红色,绿色和蓝色各值的对象-
hexToRgb('#0080C0') should return 0, 128, 192
为此的代码将是-
const hex = '#0080C0'; const hexToRGB = hex => { let r = 0, g = 0, b = 0; //处理3位数的十六进制 if(hex.length == 4){ r = "0x" + hex[1] + hex[1]; g = "0x" + hex[2] + hex[2]; b = "0x" + hex[3] + hex[3]; //处理6位十六进制 }else if (hex.length == 7){ r = "0x" + hex[1] + hex[2]; g = "0x" + hex[3] + hex[4]; b = "0x" + hex[5] + hex[6]; }; return{ red: +r, green: +g, blue: +b }; } console.log(hexToRGB(hex));
以下是控制台上的输出-
{ red: 0, green: 128, blue: 192 }