मैं एक संगीत कार्यक्रम पर काम कर रहा हूं जिसके लिए कई जावास्क्रिप्ट तत्वों को दूसरे के साथ सिंक करने की आवश्यकता होती है। मैं उपयोग कर रहा हूं setInterval
, जो शुरू में वास्तव में अच्छी तरह से काम करता है। हालांकि, समय के साथ तत्व धीरे-धीरे सिंक से बाहर हो जाते हैं जो एक संगीत कार्यक्रम में खराब है।
मैंने ऑनलाइन पढ़ा है setTimeout
जो अधिक सटीक है, और आप setTimeout
किसी तरह लूप कर सकते हैं । हालांकि, मुझे एक सामान्य संस्करण नहीं मिला है जो बताता है कि यह कैसे संभव है।
मूल रूप से मेरे कुछ कार्य हैं जैसे:
//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);
यह शुरुआत में सुपर अच्छी तरह से काम करता है, लेकिन लगभग एक मिनट के दौरान, लगता है कि जब भी मैंने पढ़ा है, तब यह सिंक से बाहर हो जाता है setInterval
। मैंने पढ़ा है कि setTimeout
लगातार अधिक सटीक हो सकता है।
किसी ने मुझे setTimeout
अनिश्चित काल के लिए पाश का उपयोग करने का एक मूल उदाहरण दिखा सकता है? वैकल्पिक रूप से, यदि setInterval
किसी अन्य फ़ंक्शन के साथ या अधिक तुल्यकालिक परिणाम प्राप्त करने का एक तरीका है , तो कृपया मुझे बताएं।