js 测试是否是合法的 颜色值


function testColor(color) {
    var re1 = /^#([0-9a-f]{6}|[0-9a-f]{3})$/i
    var re2 = /^rgb\(([0-9]|[0-9][0-9]|25[0-5]|2[0-4][0-9]|[0-1][0-9][0-9])\,([0-9]|[0-9][0-9]|25[0-5]|2[0-4][0-9]|[0-1][0-9][0-9])\,([0-9]|[0-9][0-9]|25[0-5]|2[0-4][0-9]|[0-1][0-9][0-9])\)$/i
    var re3 = /^rgba\(([0-9]|[0-9][0-9]|25[0-5]|2[0-4][0-9]|[0-1][0-9][0-9])\,([0-9]|[0-9][0-9]|25[0-5]|2[0-4][0-9]|[0-1][0-9][0-9])\,([0-9]|[0-9][0-9]|25[0-5]|2[0-4][0-9]|[0-1][0-9][0-9])\,(1|1.0|0.[0-9])\)$/i
    return re2.test(color) || re1.test(color) || re3.test(color);
}

var colors = ["#55efc4", '#fab1a0', '#fd79a8', '#fdcb6e', '#0984e3', '#00b894', '#dfe6e9', '#2c2c54', '#34ace0', '#ff793f', '#706fd3', '#218c74'];

function addColor(color) {
    if (testColor(color)) {
        colors.push(color);
        for (let i = 0; i < colors.length; i++) {
            if (colors.indexOf(colors[i]) !== i) {
                colors.splice(i--, 1); //删掉之后,length -1;i指向下一个,所以需要i--;
            }
        }
    }
}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM