پیاده سازی تابع sleep یا وقفه در جاوا اسکریپت
mohsen•3 هفته قبل
ارسال شده در
javascriptیکی از بهترین راه حل ها برای پیادهسازی تابع وقفه در جاوا اسکریپت، استفاده از Promises است. با استفاده از setTimeout
، میتوان بدون متوقف کردن کل برنامه، یک وقفه ایجاد کرد. این روش به شما این امکان را میدهد که کدهایی را بعد از مدت زمان مشخصی اجرا کنید. فرم متداول تابع خواب به صورت زیر است:
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
این تابع میتواند به صورت زیر در عملکردهای غیرهمزمان (async) استفاده شود:
async function demo() {
for (let i = 0; i < 5; i++) {
console.log(`Waiting ${i} seconds...`);
await sleep(i * 1000);
}
console.log('Done');
}
demo();
در کد بالا، به ازای هر بار تکرار حلقه، برنامه به مدت مشخصی متوقف میشود و بعد از آن ادامه مییابد. همچنین، استفاده از await
فقط درون توابعی که با کلمه کلیدی async
تعریف شدهاند، امکانپذیر است.
رای
0
ارسال نظر
مرتب سازی:
اولین نفری باشید که نظر می دهید!