var intervalTimer;
intervalTimer = setTimeout((function() {
return setTimeout((function() {
console.log(1);
return setTimeout((function() {
console.log(2);
return setTimeout((function() {
return console.log(3);
}), 1000);
}), 1000);
}), 1000);
}), 1000);
new Promise(function(resolve){
setTimeout(function() {
console.log(1);
resolve();
}, 1000);
}).then(function() {
let nextPromise = new Promise(function(resolve){
setTimeout(function() {
console.log(2);
resolve();
}, 1000);
});
return nextPromise;
}).then(function() {
let nextPromise = new Promise(function(resolve){
setTimeout(function() {
console.log(3);
resolve();
}, 1000);
});
return nextPromise;
}).then(function() {
setTimeout(function() {
console.log(4);
}, 1000);
});
var state = 0;
var intervalTimer = setInterval(function () {
switch(state){
case 0:
console.log(1);
break;
case 1:
console.log(2);
break;
case 2:
console.log(3);
break;
default:
clearInterval(intervalTimer);
}
state++;
}, 1000);