js?promise?中使用?setTimeout?實現(xiàn)暫停執(zhí)行的效果
在使用 promise 時,需要使用 setTimeout 來進行延時執(zhí)行
對 promise 還不太熟悉的同學可能第一時間想到的是這樣的寫法
如:
run();
async function run() {
console.log('1');
// 等待兩秒之后執(zhí)行
setTimeout(() => {
const data = await getData();
console.log(data);
}, 200);
}
function getData() {
return new Promise((resolve, reject) => {
resolve("200");
})
}這樣寫 await 就報錯了

想要實現(xiàn)延時效果,我們這里先封裝個sleep
function x_sleep(time) {
return new Promise(resovle => {
setTimeout(() => {
resolve();
}, time)
})
}此時就可以通過我們的 sleep函數(shù)去進行延時處理了
完整代碼:
run();
async function run() {
console.log("1");
// 停止2秒
await x_sleep(2000);
const data = await getData();
console.log(data);
}
function getData() {
return new Promise((resolve, reject) => {
resolve("200");
})
}
function x_sleep(time) {
return new Promise(resolve => {
setTimeout(() => {
resolve();
}, time)
})
}到此這篇關(guān)于js promise 中使用 setTimeout 實現(xiàn)暫停執(zhí)行 的文章就介紹到這了,更多相關(guān)js使用 setTimeout 實現(xiàn)暫停執(zhí)行 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
javascript setAttribute, getAttribute 在不同瀏覽器上的不同表現(xiàn)
該方法把指定的屬性設(shè)置為指定的值。如果不存在具有指定名稱的屬性,該方法將創(chuàng)建一個新屬性。2010-08-08
JavaScript中的純函數(shù)與偏函數(shù)你了解嗎
JS中,純函數(shù)指在相同的輸入下始終產(chǎn)生相同的輸出并且沒有副作用的函數(shù),偏函數(shù)指一種創(chuàng)建新函數(shù)的方法,通過預設(shè)一個或多個參數(shù)從而實現(xiàn)對原始函數(shù)的封裝和定制,本文主要來講講純函數(shù)與偏函數(shù)的一些使用,需要的可以參考一下2023-05-05
基于JavaScript實現(xiàn)數(shù)值型坐標軸刻度計算算法(echarts的y軸刻度計算)
這篇文章主要介紹了基于JavaScript實現(xiàn)數(shù)值型坐標軸刻度計算算法(echarts的y軸刻度計算),文章圍繞主題展開詳細的內(nèi)容介紹,感興趣的朋友可以參考與一下2022-06-06

