在JS中编写BPM函数,我在一分钟内播放短暂的x次声音。
但它不适合我,这就是我所拥有的。 无法找到任何相关内容。
数学应该很简单:L * BPM / M,长度*多少次/ 60秒。
我尝试过这样的事情:
var length = 0.5;
var bpm = 60;
var minute = 60;
for(var i = 0; i < bpm; i++) {
setTimeout(function() {
console.log('test');
}, ((length*bpm) / minute * 1000 ) * i);
}
答案 0 :(得分:1)
数学应该是: (60 / bpm)* 1000
我不知道长度变量是什么,你没有解释它。 以下将导致&#34;测试&#34;一分钟运行180次
var bpm = 180;
var interval = (60 / bpm) * 1000;
var ranTimes = 0;
var myTimeout = setInterval(function() {
console.log('test' + ranTimes);
ranTimes++;
if (ranTimes >= bpm) {
clearInterval(myTimeout);
}
}, interval);