Я хочу, чтобы индекс возвращался к первому, как только его обработка обрабатывала все элементы. Этот код, похоже, не работает. может кто-нибудь дать мне руку о том, как это исправить? почему это происходит?Как попросить массив вернуться к первому индексу?
Одна догадка у меня есть, так как buttonArray.length
не равна arrayPosition
Это может быть причиной проблемы. Но я попробовал вручную положить 3 и сделал (buttonArray.length-1)
. Это все еще не сработало.
buttonArray.push (square,triangle,circle,hexagon);
function clickon(clickTarget:MouseEvent){
if (clickTarget.target == buttonArray[arrayPosition]){
trace ("correct");
trace (buttonArray.length);
trace (arrayPosition);
if (buttonArray[arrayPosition]== buttonArray.length)
{
arrayPosition = 0;
trace ("this is working");
}
else
{
arrayPosition++;
}
// inside if loop end
}
else
{
trace ("not correct");
}
}
Практически там правильная проверка будет проводиться против самой длины. – Vesper
@vesper Нет. Я думаю, что ответ Snukus правильный, как будто 'arrayPosition' является последним индексом, возможным для массива (например,' buttonArray.length - 1'), мы хотим установить его для 0 для следующего события. Если нет, то мы просто увеличиваем 'arrayPosition' на единицу. – duTr
Я упомянул в вопросе, который я уже пробовал, что он не работает heeh .. но thx. – tailedmouse