Zum Inhalt

ActionScript: „Hex nach RGB“-Konversion

Es gibt bestimmt schönere, schnellere, komfortablere Lösungen, aber meine hilft mir fürs erste.
Ich hätte gern den Rückgabewert der Funktion als „:Array“ typisiert, aber dann meckert mich der Compiler an, weil ja als Rückgabe auch ein Boolean herauskommen kann. Was macht man in solchen Fällen nochmal? Hatte ich doch jüngst bei Colin Moock (seltsamer Name für einen Iren. Oder ist der am Ende gar keiner?) gelesen…
Zudem besteht die Rückgabe der Funktion in einem Array mit drei Elementen. Aber man kann sich ja jederzeit etwas anderes daraus formen, sollte es nötig werden.

Ist es eigentlich ein Verstoß gegen die Wohlgeformtheit von Skript, wenn ich die lokalen Variablen erst nach der If-Abfrage initialisiere?

function HEX2RGBArray(input:String) { // returns an array or false
if (input.length != 6) {
return false;
}
var arOutput:Array = new Array();

var r:Number = parseInt(input.substr(0, 2), 16);
var g:Number = parseInt(input.substr(2, 2), 16);
var b:Number = parseInt(input.substr(4, 2), 16);

arOutput[0] = r;
arOutput[1] = g;
arOutput[2] = b;

return arOutput;
}

trace( HEX2RGBArray("b3b7ba") ); // Output: 179,183,186

// Anwendung
arRGB = HEX2RGBArray("b3b7ba");
trace( arRGB[0] ); // Output: 179
trace( arRGB[1] ); // Output: 183
trace( arRGB[2] ); // Output: 186

Veröffentlicht inAllgemein
Loading Facebook Comments ...

Schreibe den ersten Kommentar

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert