Ich bin neu in der Programmierung und Javascript und habe Probleme beim Ändern eines Wertes in einem meiner Arrays durch den Index. Der Rest des Codes funktioniert gut, aber ich kann nicht scheinen, auf meine Gesichter [] durch seinen Index zuzugreifen, während in einem anderen Array es gut funktioniert.Kann den Wert in einem Array nicht ändern
f1 = 0;
f2 = 0;
f3 = 0;
f4 = 0;
f5 = 0;
f6 = 0;
faces = [f1, f2, f3, f4, f5, f6];
//loop through a single throw with 5 dies
for(var i = 0; i < dice.length; i++){
var die = Math.floor(Math.random() * 6) + 1;
//if hold is true skip the corresponding iteration
if(hold1 == true && i===0){
alert("holding: " + held[0]);//shows the value of the die that's being held
for(var i = 0; i < 6; i++){
faces[i] = 5;//doesn't add anything
faces[2] = 5; //nor does this
faces[1]++; //or this
f1 = 3; //this works however
}
alert("faces are: " + f1 + ", " + f2 + ", " + f3 + ", " + f4 + ", " + f5 + ", " + f6);
continue;
}
//rest of code
Der Alarm ist zu prüfen, ob die Werte ändern und es gibt 3, 0, 0, 0, 0, 0, da es nur auf die Variablen in dem Index Zuordnung scheint direkt zu arbeiten.
warum das Array nicht direkt verwenden? –
Ihre innere Schleife sollte nicht dieselbe "i" Variable wie Ihre äußere Schleife verwenden. Ändern Sie den Variablennamen. Auch die innere Verfassung, bist du sicher, dass es richtig ist? 'hold1 == true && i == 0' das sieht verdächtig falsch aus. –