Wie würde man einen deterministischen Javascript HTML-Farbauswähler erstellen, der anhand der gewünschten Anzahl an Farben ein Array von HTML-Hex-Farbcodes zurückgibt, also:
function createColours(numColours) {
return [/* Farben-Array der Größe numColours */]
}
Die Farben selbst können zufällig ausgewählt / generiert werden, aber die Methode muss garantieren, dass die ausgewählten Farben bei jedem Aufruf gleich sind und immer in der gleichen Reihenfolge erscheinen.
Beispiel: Wenn die Serie von Farben, die von der Funktion festgelegt wurde, mit den folgenden 8 Farben beginnt:
"#47092E", "#CC2A43", "#00C66B", "#BC1300", "#667E00", "#795800", "#FFD245", "#6EFFAD", etc, etc
Die Funktion würde bei separaten Methodenaufrufen auf dem Client mit den folgenden konstanten Antworten reagieren:
["#47092E", "#CC2A43"] == createColours(2);
["#47092E", "#CC2A43", "#00C66B", "#BC1300", "#667E00"] == createColours(5);
["#47092E"] == createColours(1);
["#47092E", "#CC2A43", "#00C66B", "#BC1300", "#667E00", "#795800", "#FFD245", "#6EFFAD", #und 49 weitere#] == createColours(57);
Hinweis: Die Farben sind nicht im Voraus als Variable definiert; die Methode könnte nach 345 Farben gefragt werden, die alle auf geeignete Weise generiert werden müssten.
Das zu lösende Problem ist - in erster Linie - wie man eine Funktion innerhalb der Methode erstellen würde, um die n HEX-Farbwerte konsistent bei jedem Aufruf gleich zu generieren und dabei die Reihenfolge beizubehalten