18910140161

JavaScript-Do While循环不起作用,我的代码在刷新时运行无限循环-堆栈溢出

顺晟科技

2022-10-18 12:39:57

96

除CASE CASE";Fas FA-RANDOM";外,

开关状态正常。在MusicAudio AddEventListener Ended上,无论音乐何时结束,它都不会选择随机歌曲。如果我刷新页面,它将进入无限循环。

HTML

<audio id="main-audio" src=""></audio>

JavaScript

let musicIndex = 1;
repeatBtn.addEventListener('click', (e) => {
const getClass = repeatBtn.className;
switch(getClass){
    case "fas fa-redo":
        repeatBtn.className = "fas fa-random";
        repeatBtn.setAttribute("title", "Playlist Shuffle")
    break;
        break;
    case "fas fa-random":
        repeatBtn.className = "fas fa-stop-circle";
        repeatBtn.setAttribute("title", "Song Repeat")
    break;
    case "fas fa-stop-circle":
    repeatBtn.className = "fas fa-redo";
    repeatBtn.setAttribute("title", "Song Looped")
    break;
}
})

musicAudio.addEventListener('ended', () => {

const getClass = repeatBtn.className;
switch(getClass){
    case "fas fa-random":
        let randIndex = Math.floor(Math.random() * allMusic.length) + 1;
        do{
            Math.floor(Math.random() * allMusic.length) + 1;
        }while(musicIndex = randIndex);
        const test = musicIndex = randIndex;
        loadMusic(musicIndex);
        playMusic();
        break;
    case "fas fa-stop-circle":
        musicAudio.currentTime = 0;
        loadMusic(indexNumb)
        break;
    case "fas fa-redo":
        nextMusic()
        break;
}
})

顺晟科技:

您的条件当前是赋值,而不是比较。

你写道:

<代码>//..While(音乐指数=随机指数);// ...

应该是:

<代码>//..While(音乐索引==随机索引);// ...

请参阅JavaScript

中=、=和=之间的区别
  • TAG:
相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航