带计时器的JavaScript交通灯阵列

带计时器的JavaScript交通灯阵列,javascript,Javascript,我已经创建了一个交通灯模拟(数组),但是我不知道把计时器放在哪里。我知道如何添加计时器,但我不知道在我的代码中应该把计时器放在哪里。请帮忙。 谢谢 代码: JavaScript任务3 这是我的红绿灯剧本 换灯 变量列表=[ “/assets/red.jpg”, “/assets/redamber.jpg”, “/assets/green.jpg”, “/assets/amber.jpg” ]; var指数=0; 函数changeLights(){ 指数=指数+1; 如果(index==list

我已经创建了一个交通灯模拟(数组),但是我不知道把计时器放在哪里。我知道如何添加计时器,但我不知道在我的代码中应该把计时器放在哪里。请帮忙。 谢谢

代码:


JavaScript任务3
这是我的红绿灯剧本

换灯 变量列表=[ “/assets/red.jpg”, “/assets/redamber.jpg”, “/assets/green.jpg”, “/assets/amber.jpg” ]; var指数=0; 函数changeLights(){ 指数=指数+1; 如果(index==list.length)index=0; var image=document.getElementById('light'); image.src=list[index]; }
使用
SettTimeout
功能,您可以做到这一点
SetTimout
函数按提供的间隔延迟脚本的执行

var列表=[
"https://upload.wikimedia.org/wikipedia/commons/b/b9/Solid_red.png",
“/assets/redamber.jpg”,
"https://commons.wikimedia.org/wiki/File:Bullet-green.png“,
“/assets/amber.jpg”
];
var指数=0;
函数changeLights(){
setTimeout(函数(){
//你的代码在这里。
指数=指数+1;
如果(index==list.length)index=0;
控制台日志(索引);
var image=document.getElementById('light');
image.innerHtml=list[index];
},1000);
}
JavaScript任务3
这是我的红绿灯剧本


换灯
一种解决方案是只添加一个计时器a:

<body onload="trafficTimer(2000);">

function trafficTimer(timer) {
    setInterval(function() { changeLights(); }, timer);
};

功能计数器(计时器){
setInterval(函数(){changeLights();},计时器);
};

这将每2秒改变一次灯光,而不是建议的

setInterval(function () { changeLights(); }, 1000);
您可以直接将该函数用作回调函数

setInterval(changeLights, 1000);

这是javaScript而不是Java,如果您需要像那样更改颜色使用
setInterval(函数(){changeLights();},1000)每一秒它都会被更改或告诉计时器的用途是什么?
setInterval(changeLights, 1000);