function loopthrough (i) {
i++;
if (i <= 20) {
play_multi_sound("aud"+i);
$("#debug").html(i);
setTimeout("loopthrough("+i+");",242); }
else {
loops++;
$("#debug").html("rest");
$("#loops").html(loops);
setTimeout("loopthrough("+0+");",1000);
}
}
Является ли мой код похожим на разветвление? поскольку после примерно трех циклов он буквально разбивает браузер. Я использую чрезмерный звук HTML5, так как мне нравится тестировать новые функции, и пока я все еще новичок в Javascript, мне действительно нужен этот код для работы. (Im, делающий простую игру в бильярде на холсте, где вы используете весло в стиле понга, и каждый шар, на который вы попадаете с разной скоростью, будет воспроизводить звук, тем самым делая крутой ритм) ... Atm im просто тестирует возможности большого количества звука зациклился сразу.Является ли мой код forking?
Итак, мой основной вопрос: «Является ли мой код эффективным, он развивается, и есть ли способ улучшить это, если вы знаете лучший способ?»
Спасибо, Том C.
EDIT:
Просто сняли петлю ++; (по какой-то причине он возвращал NaN, хотя он был определен как глобальный), и он фактически успешно зацикливался 20 раз без недостатков.
Что нужно для 'var i = i + 1;', а не 'i = i + 1'? Способ инициализации значений, если null? (Не использовали javascript через некоторое время) – Blam
Лучшая ставка - попробовать немного немного отладки - добавьте console.log («bla») туда и посмотрите, сколько раз он появляется. Это должно дать вам знать, работает ли оно правильно или нет, и поможет вам узнать, где он сбой. – xil3
Чем меньше тайм-аутов у вас есть, тем лучше. Может быть, вы можете отменить некоторые? –