简体   繁体   English

setTimeout 和 setInterval 一起——重复暂停

[英]setTimeout and setInterval together -- repeating a pause

In javascript, I need to do the following, written in pseudocode:在 javascript 中,我需要执行以下操作,用伪代码编写:

REPEAT EVERY 5 SECONDS
    print 'One'
    wait 2.5 seconds
    print 'Two'
    wait 2.5 seconds

How can I do this?我怎样才能做到这一点? My (clumsy?) attempt follows:我的(笨拙的?)尝试如下:

a = setInterval(function() { 
     setTimeout(function(){print 'one'},0);
     setTimeout(function(){print 'two'},2500);
    },5000);

Improvements?改进?

var counter = 0;

setInterval(function() { 
     console.log( counter++ % 2 ? 'one' : 'two' );
}, 2500);

Here's the fiddle: http://jsfiddle.net/RvVD7/这是小提琴: http : //jsfiddle.net/RvVD7/

Why you want to combine setTimeout and setInterval for this remains a mystery, but anyhow:为什么要为此结合 setTimeout 和 setInterval 仍然是个谜,但无论如何:

setInterval(function() {
  console.log('one');
  setTimeout(function() {
    console.log('two');
  },2500);
}, 5000);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM