中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue如何使用setTimeout代替setInterval

發布時間:2022-03-19 14:25:14 來源:億速云 閱讀:457 作者:小新 欄目:開發技術

這篇文章給大家分享的是有關vue如何使用setTimeout代替setInterval的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

使用 setTimeout 代替 setInterval

一般情況下我們在項目里不建議使用 setInterval,因為其會存在代碼的執行間隔比預期小以及 “丟幀” 的現象,原因在于其本身的實現邏輯。很多人會認為 setInterval 中第二個時間參數的作用是經過該毫秒數執行回調方法,其實不然,其真正的作用是經過該毫秒數將回調方法放置到隊列中去,但是如果隊列中存在正在執行的方法,其會等待之前的方法完畢再執行,如果存在還未執行的代碼實例,其不會插入到隊列中去,也就產生了 “丟幀”。

而 setTimeout 并不會出現這樣的現象,因為每一次調用都會產生了一個新定時器,同時在前一個定時器代碼執行完之前,不會向隊列插入新的定時器代碼。

// 該定時器實際會在 3s 后立即觸發下一次回調
setInterval(() => {
 // 執行完這里的代碼需要 2s
}, 1000);

// 使用 setTimeout 改寫,4秒后觸發下一次回調
let doSometing = () => {
 // 執行完這里的代碼需要 2s
 
 setTimeout(doSometing, 1000);
}

doSometing();

感謝各位的閱讀!關于“vue如何使用setTimeout代替setInterval”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

若羌县| 永川市| 萨嘎县| 石棉县| 陆河县| 潮安县| 平度市| 肥西县| 彩票| 宁远县| 永和县| 香格里拉县| 永修县| 望都县| 东阿县| 伊宁县| 铜陵市| 攀枝花市| 苏尼特右旗| 西吉县| 平泉县| 光山县| 阿拉善盟| 北辰区| SHOW| 龙南县| 宁化县| 唐河县| 乌审旗| 台中县| 浪卡子县| 囊谦县| 宾阳县| 建平县| 唐海县| 凌云县| 乡宁县| 京山县| 屏东市| 青州市| 西乌珠穆沁旗|