Heim > Web-Frontend > js-Tutorial > Hauptteil

So implementieren Sie Ampeln in Javascript

藏色散人
Freigeben: 2021-11-16 14:14:37
Original
5775 Leute haben es durchsucht

So implementieren Sie Ampeln in JavaScript: 1. Verwenden Sie setTimeout und Rekursion, um Farben in einer Schleife zu ändern. 2. Verwenden Sie Promise und schreiben Sie die nächste Farbänderung ein. 3. Verwenden Sie Async Wait und While, um Ampeleffekte zu implementieren.

So implementieren Sie Ampeln in Javascript

Die Betriebsumgebung dieses Tutorials: Windows 7-System, JavaScript-Version 1.8.5, Dell G3-Computer.

Wie implementiert man Ampeln in JavaScript?

JavaScript zum Implementieren von Ampeln

Verwenden Sie setTimeout, Promise und Async Wait auf drei Arten, um Ampelcode zu implementieren: rotes Licht für 2 Sekunden, gelbes Licht für 1 Sekunde, grünes Licht für 3 Sekunden und Farbwechsel in einer Schleife. Die Methode zum Ändern der Farbe besteht einfach darin, die Farbe auszudrucken.

setTimeout-Implementierung

 Die Verwendung von setTimeout ist die einfachste Möglichkeit, es zu implementieren. Der Code lautet wie folgt und verwendet Rekursion, um Farben in einer Schleife zu ändern.

function changeColor(color) {
console.log('traffic-light ', color);
}
function main() {
changeColor('red');
setTimeout(()=>{
changeColor('yellow');
setTimeout(() => {
changeColor('green');
setTimeout(main, 2000);
}, 1000);
}, 2000);
}
main();
Nach dem Login kopieren

Promise-Implementierung

 Schreiben Sie dann mit Promise die nächste Farbänderung hinein und verwenden Sie schließlich die Rekursion, um die Schleife abzuschließen.

function sleep(duration){
    return new Promise(resolve => {
        setTimeout(resolve, duration);
    })
}
function changeColor(duration,color){
    return new Promise(resolve => {
console.log('traffic-light ', color);
    sleep(duration).then(resolve);
})
}
function main() {
return new Promise(resolve => {
changeColor(2000, 'red').then(() => {
changeColor(1000, 'yellow').then(() => {
changeColor(3000, 'green').then(() => {
main();
})
})
})
})
}main();
Nach dem Login kopieren

Async-Await-Implementierung

 Die Verwendung von Async-Await kann eine Reihe von .then.then.then in Promise vermeiden und erfordert keine Rekursion mehr. Verwenden Sie while, um Schleifen zu implementieren.

function sleep(duration) {
return new Promise(resolve => {
setTimeout(resolve, duration);
})
}
async function changeColor(color, duration) {
console.log('traffic-light ', color);
await sleep(duration);
}
async function main() {
while (true) {
await changeColor('red', 2000);
await changeColor('yellow', 1000);
await changeColor('green', 3000);
}
}
main();
Nach dem Login kopieren

Empfohlenes Lernen: „JavaScript-Grundlagen-Tutorial

Das obige ist der detaillierte Inhalt vonSo implementieren Sie Ampeln in Javascript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage