Heim  >  Fragen und Antworten  >  Hauptteil

js setInterval-Problem

Es gibt zwei Funktionen a() und b(). Ich möchte zuerst a ausführen, dann b nach einem Intervall von drei Sekunden ausführen, a erneut nach einem Intervall von drei Sekunden ausführen und dann b nach einem Intervall von drei Sekunden ausführen . Das geht weiter... Wie schreibe ich?

大家讲道理大家讲道理2681 Tage vor604

Antworte allen(4)Ich werde antworten

  • 怪我咯

    怪我咯2017-05-19 10:46:25

    function a() {
        setTimeout(b, 3000);
        console.info('This is a!');
    }
    function b() {
        setTimeout(a, 3000);
        console.info('This is b!');
    }
    a();

    Antwort
    0
  • PHP中文网

    PHP中文网2017-05-19 10:46:25

    function start() {
        a()
    }
    var timer;
    function a() {
        clearTimeout(timer);
        timer = setTimeout(b, 3000);
    }
    function b() {
        clearTimeout(timer);
        timer = setTimeout(a, 3000);
    }

    Antwort
    0
  • 習慣沉默

    習慣沉默2017-05-19 10:46:25

    a和b隔六秒执行一次,先执行a,隔三秒执行b。。。不然如果考虑到函数执行时间的话,间隔的三秒可不是准确的三秒

    Antwort
    0
  • 为情所困

    为情所困2017-05-19 10:46:25

    var flag = true;
    var s = setInterval(function(){
        if(flag){
            a();
            
        }else{
            b()
        }
        flag =!flag
    
    },3000)

    Antwort
    0
  • StornierenAntwort