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--;
}
}
}
}