十六进制颜色到RGB颜色JavaScript

我们需要编写一个采用十六进制颜色并返回其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 }