3
StackOverflowトピックの1つに従って、独自のRGB to HEXカラーコンバータを作成しようとしました。RGBをHEXに変換する
理由は分かりませんが、代わりにRGB値を2倍に変換します。
入力がrgb(0, 128, 192)
の場合、それは#00128192
をコンソールアウトします。
私のコードは次のとおり
fromRGB: {
toHEX: {
supportFunc: function(number) {
var hex = number.toString(16);
return hex.length == 1 ? '0' + hex : hex;
},
convert: function(r, g, b) {
var lol = '#' + this.supportFunc(r) + this.supportFunc(g) + this.supportFunc(b);
console.log(lol);
}
},
prepareAndExecute: function(color_field) {
// preparing
var numbers = color_field.match(/\d+/g);
if(numbers.length == 3) {
this.toHEX.convert(numbers[0], numbers[1], numbers[2]);
} else {
alert('wrong RGB number format');
}
//this.toHSL(preparedValue);
}
}
I関数を準備実行、lol
変数は、HEX形式で変換された色が含まれていなければならないものです。
私のコードで何が問題なのですが、なぜ機能しないのですか?
'.match ) 'は数字ではなく**文字列**の配列を返します。 – Pointy
[RGB to Hex and Hex to RGB]の重複している可能性があります(https://stackoverflow.com/questions/5623838/rgb-to-hex-and-hex-to-rgb) –
@KenWhite私はOPがすでに複写上のコードを思いつくためにリンクを張ってください。しかし、値を取得する方法に関係しない問題(文字列としての文字列)が発生しました。したがって、それをそのリンクに複製としてマークするのは間違っています。 –