是否可以在 JavaScript 中分层声音?

Is it possible to layer sounds in JavaScript?

所以我在用 javscript 制作一个程序,我想知道是否有办法在 javascript 中播放 'layer' 声音,即让它们同时播放。

我使用下面的代码来播放声音:

var snd=new Audio();
snd.src="sound.mp3";
//Code to ensure this and other assets load etc etc
//Playing sound
snd.play();

我注意到如果 snd.play() 每秒执行 3 次,它将播放一次并等到它停止播放,而不是在调用 snd.play() 时播放它,即使如果这意味着必须同时播放相同的声音文件。我该如何解决?

每次您想播放相同的声音片段(如果它已经在播放)时创建一个新的 Audio 对象。

function playSound() {
   var snd = new Audio();
   snd.src = "sound.mp3";
   snd.play();
}