当前位置 : 主页 > 网页制作 > css >

RGB颜色值转换成十六进制

来源:互联网 收集:自由互联 发布时间:2021-06-13
function transferRgbToStr ( color ) { if ( typeof color !== ‘ string ‘ !( color instanceof String ) || !~ color . indexOf (‘ rgb ‘)) return console . error (" 请输入rgb形式的颜色值 "); color = color . replace (/\s+/g, ‘‘
function transferRgbToStr(color) {
        if (typeof color !== ‘string‘ && !(color instanceof String) || !~color.indexOf(‘rgb‘)) return console.error("请输入rgb形式的颜色值");
        color = color.replace(/\s+/g, ‘‘);
        var index = color.indexOf(‘(‘) + 1;
        //注意: String 的slice方法,slice方法参数为负数时,即为倒数
        // substring 方法参数为负数时,全都认为是0
        var colors = color.slice(index, -1).split(‘,‘).slice(0, 3);
        for (var i = 0; i < colors.length; i++) {
            if (parseInt(colors[i], 10) > 255 || parseInt(colors[i], 10) < 0)
                return console.error("颜色值范围在0到255之间,请注意输入值!")
            colors[i] = parseInt(colors[i], 10).toString(16);
            if (colors[i].length === 1) {
                colors[i] = "0" + colors[i]
            }
        }
        return colors.join("");
    }

transferRgbToStr传入的值是rgb(0,0,0)
网友评论