将rgb表示方式转换为hex表示方式-------------将hex表示方式转换为rgb表示方式(这里返回rgb数组组合)
转载/**
* kevin 2021.1.4
* 将rgb表示方式转换为hex表示方式
* @param {string} rgbColor 传过来的hex格式的颜色
* @returns {string | null}
*/
export function colorHex(rgbColor) {
var _this = rgbColor
var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/
if (/^(rgb|RGB)/.test(_this)) {
var aColor = _this.replace(/(?:\(|\)|rgb|RGB)*/g, '').split(',')
var strHex = '#'
for (var i = 0; i < aColor.length; i++) {
var hex = Number(aColor[i]).toString(16)
hex = hex < 10 ? 0 + '' + hex : hex// 保证每个rgb的值为2位
if (hex === '0') {
hex += hex
}
strHex += hex
}
if (strHex.length !== 7) {
strHex = _this
}
return strHex
} else if (reg.test(_this)) {
var aNum = _this.replace(/#/, '').split('')
if (aNum.length === 6) {
return _this
} else if (aNum.length === 3) {
var numHex = '#'
for (var j = 0; j < aNum.length; j += 1) {
numHex += (aNum[j] + aNum[j])
}
return numHex
}
} else {
return _this
}
}
/**
* kevin 2021.1.4
* 将hex表示方式转换为rgb表示方式(这里返回rgb数组组合)
* @param {string} hexColor 传过来的hex格式的颜色
* @returns {string | null}
*/
export function colorRgb(hexColor) {
var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/
var sColor = hexColor.toLowerCase()
if (sColor && reg.test(sColor)) {
if (sColor.length === 4) {
var sColorNew = '#'
for (var i = 1; i < 4; i += 1) {
sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1))
}
sColor = sColorNew
}
// 处理六位的颜色值
var sColorChange = []
for (var j = 1; j < 7; j += 2) {
sColorChange.push(parseInt('0x' + sColor.slice(j, j + 2)))
}
return sColorChange
} else {
return sColor
}
}
本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
下一篇:PTA 乘法表
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
js:rgb颜色表示转hex颜色表示
【代码】js:rgb颜色表示转hex颜色表示。
javascript 前端 vue.js 代码实现 -
json介绍,表示方式
1. json的介绍json是 JavaScript Object Notation 的首字母缩写,翻译过来
javascript json 字符串 -
JAVA进制的表示方式
计算机中不同进制的使用说明:对于整数,有4种表示方式:> 二进制:0,1,满2进1
JAVA基础 JAVA进制 System JAVA 使用说明