Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Melaksanakan Fungsi Tidur JavaScript Moden Menggunakan Janji?
Pendekatan Moden untuk Tidur JavaScript: Memperkenalkan Penyelesaian Berasaskan Janji
Sejak penubuhannya pada tahun 2009, JavaScript telah mengalami perubahan yang ketara. Fungsi pausecomp yang pernah popular untuk mencipta tidur "sebenar" dalam fungsi telah menjadi lapuk. Hari ini, pendekatan yang lebih cekap dan serba boleh menanti kami.
Versi tidur JavaScript moden bergantung pada kuasa Promises. Menggunakan pembina Promise() baharu, kita boleh mencipta janji yang diselesaikan selepas bilangan milisaat tertentu. Dengan menggunakan kata kunci await, kami boleh menjeda pelaksanaan fungsi sehingga janji diselesaikan, dengan berkesan mencapai tingkah laku tidur yang diingini.
Berikut ialah coretan kod yang dikemas kini:
function sleep(ms) { return new Promise(resolve => setTimeout(resolve, ms)); }
Fungsi ini boleh digunakan dalam pelbagai cara:
Sebagai a satu pelapik:
await new Promise(r => setTimeout(r, 2000));
Sebagai fungsi kendiri:
const sleep = ms => new Promise(r => setTimeout(r, ms));
Sebagai fungsi ditaip dalam TypeScript:
const sleep = (ms: number) => new Promise((r) => setTimeout(r, ms));
Untuk menggunakan fungsi tidur, hanya panggilnya dengan tempoh yang dikehendaki dalam milisaat dan tunggu resolusinya:
await sleep(2000);
Demo:
async function demo() { for (let i = 0; i < 5; i++) { console.log(`Waiting ${i} seconds...`); await sleep(i * 1000); } console.log('Done'); } demo();
Pendekatan yang dikemas kini ini bukan sahaja memudahkan pelaksanaan tidur tetapi juga menyediakan penyelesaian moden dan cekap yang memanfaatkan tak segerak sifat JavaScript.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Fungsi Tidur JavaScript Moden Menggunakan Janji?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!