cómo convertir color rgb a cadena de nombre de color en javascript
let btn = document.querySelector("#demo"); let css = getComputedStyle(btn); console.log(css.color); la salida está en valor rgb rgb (255,0,0)
Debe convertir la cadena RGB a un valor hexadecimal y luego puede compararla con una lista como esta de nombres de colores HTML.
const colors={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff"}; // Pass in the string function toHex(rgb) { // Grab the numbers const match = rgb.match(/\d+/g); // `map` over each number and return its hex // equivalent making sure to `join` the array up // and attaching a `#` to the beginning of the string return `#${match.map(color => { const hex = Number(color).toString(16); return hex.length === 1 ? `0${hex}` : hex; }).join('')}`; } // Now just iterate over the colors object and return the // key from the property where the value matches the hex value function findColor(hex) { const pair = Object.entries(colors).find(([key, value]) => { return value === hex; }); return pair[0]; } const hex1 = toHex('rgb(255, 228, 196)'); console.log(findColor(hex1)); const hex2 = toHex('rgb(127, 255, 212)'); console.log(findColor(hex2));