js 红绿灯

<script>

// 红灯3秒亮一次,绿灯1秒亮一次,黄灯2秒亮一次;如何使用Promise让三个灯不断交替重复亮灯?(海康威视笔试题)

// function red(){

// console.log('red');

// }

// function green(){

// console.log('green');

// }

// function yellow(){

// console.log('yellow');

// }

setInterval(() => {

var promise=new Promise((resolve,reject)=>{

setTimeout(() => {

document.write("red\n")

document.write("<br>")

resolve()

}, 3000);

}).then(function(){

return new Promise(function(resolve,reject){

setTimeout(() => {

document.write("green\n")

document.write("<br>")

resolve()

}, 1000);

})

}).then(function(){

setTimeout(() => {

document.write("yellow\n")

document.write("<br>")

}, 500);

})

}, 6000);

</script>