Also, ich habe ein Array, das mehrere Strings enthält.Ignorieren bestimmter Strings im zweiten Zyklus
var Array = ["mods/red1.png", "mods/red2.png", "mods/red3.png", "mods/orange1.png", "mods/orange2.png", "mods/orange3.png", "mods/blue1.png", "mods/blue2.png", "mods/blue3.png"];
Meine Funktion wählt eine zufällig aus. Ich muss das einrichten: Wenn es Rot1 aufnahm, würde es alle Zeichenfolgen mit Rot ignorieren und nur eines der Orange oder Blau ausdrucken.
Aktuelle Code sieht etwa so aus:
var num = Math.floor(Math.random() * Array.length);
var num2 = Math.floor(Math.random() * Array.length);
if(RedModArray[num] !== undefined){
document.mod1.src = Array[num];
if(Array[num].indexOf("red") > -1){
document.mod2.src = Array[num2];
}
Aber egal, was ich getan habe, sei es nichts ausdrucken, oder ist noch zufällig.
mod1
und mod2
sind die Namen der Elemente in HTML.
Sie haben es richtig, was ich meinte, aber ich habe 0 Idee, wie ich das Snippet in meine aktuelle Funktion implementieren sollte. Aber ich kam auf eine Idee, wo ich für jede Farbe ein Array machen, zufällig ein Array auswählen und dann eine Zeichenfolge aus diesem Array auswählen sollte, wenn es sinnvoll ist. – H4rdas
Ich kenne Ihren tatsächlichen Anwendungsfall nicht, also kann ich wirklich nicht helfen. Sie können immer ein zweites Array verwenden, wenn Sie das nicht ändern können (ersetzen Sie "a = a.filter ..." durch "b = a.filter ..." und arbeiten Sie dann mit b). – ZPiDER