我尝试根据1-4之间的Math.random结果播放声音文件。我使用JavaScript构建“ Simon游戏”,并想播放特定的声音文件(基于当前的闪烁框,为4之1)。我已经将4种声音文件存储在这样的对象中:
let random = Math.floor((Math.random() * 4) + 1);
let sounds = {
box1: new Audio("https://s3.amazonaws.com/freecodecamp/simonSound1.mp3"),
box2: new Audio("https://s3.amazonaws.com/freecodecamp/simonSound2.mp3"),
box3: new Audio("https://s3.amazonaws.com/freecodecamp/simonSound3.mp3"),
box4: new Audio ("https://s3.amazonaws.com/freecodecamp/simonSound4.mp3")
};
如何根据随机结果操作声音?
致谢
答案 0 :(得分:1)
我认为这是您想要的:
const random = Math.floor(Math.random() * Object.keys(sounds).length - 1);
sounds[`box${random}`].play();
尽管数组可能会更好地适合您的用例,因为它会阻止使用Object.keys()
。
答案 1 :(得分:0)
在代码底部只需添加:
sounds['box'+random].play();