Qyouu
如果您不需要 rgbA 中的“a”,请告诉我,我将删除它的支持。但基本上,您只需将每个整数转换为十六进制字符串,并在需要时添加 0。function rgbaToHex (r,g,b,a) { var outParts = [ r.toString(16), g.toString(16), b.toString(16), Math.round(a * 255).toString(16).substring(0, 2) ]; // Pad single-digit output values outParts.forEach(function (part, i) { if (part.length === 1) { outParts[i] = '0' + part; } }) return ('#' + outParts.join(''));}alert(rgbaToHex(255,34,56,1));