Birden çok JavaScript öğesinin bir başkasıyla senkronize olmasını gerektiren bir müzik programı üzerinde çalışıyorum. setInterval
Başlangıçta gerçekten iyi çalışan kullanıyorum . Bununla birlikte, zamanla öğeler kademeli olarak uyumsuz hale gelir ve bu da bir müzik programında kötüdür.
setTimeout
Daha doğru olanı çevrimiçi okudum ve bir setTimeout
şekilde döngülere sahip olabilirsiniz . Ancak bunun nasıl mümkün olduğunu gösteren genel bir versiyon bulamadım.
Temelde aşağıdaki gibi bazı işlevlerim var:
//drums
setInterval(function {
//code for the drums playing goes here
}, 8000);
//chords
setInterval(function {
//code for the chords playing goes here
}, 1000);
//bass
setInterval(function {
//code for the bass playing goes here
}, 500);
Başlangıçta çok iyi çalışıyor, ancak yaklaşık bir dakika içinde, okuduğum gibi sesler gözle görülür şekilde senkronize olmuyor setInterval
. Bunun setTimeout
daha tutarlı bir şekilde doğru olabileceğini okudum .
Birisi bana bir setTimeout
şeyi süresiz olarak döngüye sokmanın temel bir örneğini gösterebilir mi? Alternatif olarak, setInterval
veya başka bir işlevle daha eşzamanlı sonuçlar elde etmenin bir yolu varsa , lütfen bana bildirin.