国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

js超時調用setTimeout和間歇調用setInterval實例分析

2024-05-06 16:15:25
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了js超時調用setTimeout和間歇調用setInterval,以實例形式對比分析了setTimeout與setInterval的具體使用技巧,非常具有實用價值,需要的朋友可以參考下
 

本文實例分析了js超時調用setTimeout和間歇調用setInterval的用法。分享給大家供大家參考。具體如下:

今天看了javascript高級程序設計(第三版)一書,發現說setTimeout比setInterval更好,覺得的確如此。平時都是用setInterval多點,現在還是轉一下思路了。又學習到了。分析如下:

setTimeout包含兩個參數,第一個參數是要執行的代碼,第二個參數是時間。
第一個參數可以是字符串也可以是函數,但是推薦使用函數而不是字符串。
使用字符串相當于eval方法。導致性能損失。

clearTimeout()

超時調用的代碼都是在全局作用域中執行的,因此函數中this的值在費嚴格模式下指向window對象,在嚴格模式下是undefined

復制代碼代碼如下:
//setInval

 

var num = 0;
var max = 10;
var intervalId = null;

function incrementNumber(){
   num++;
   if(num == max){
      clearInterval(innervalId);
      alert('done');
   }
}

intervalId = setInterval(incrementNumber(),500);

//setTimeout 實現相同功能

var num = 0;
var max = 10;
function incrementNumber2(){
   num++;
   if(num < max){
      setTimeout(incrementNumber2,500);
   }else{
      alert('done');
   }
}
setTimeout(incrementNumber2,500);

 

以上對比可以發現,使用超時調用時,沒有必要跟蹤超時調用id,因為每次執行代碼之后,如果不再設置另一次超時調用,調用就會自行停止。

一般認為,如果超時調用用來模擬間歇調用的是一種最佳模式。

在開發環境下,很少真正的間歇調用,原因是后一個間歇調用可能會在前一個間隙調用結束之前啟動。

最好不要使用間歇調用。

希望本文所述對大家的javascript程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 邵阳县| 建湖县| 马鞍山市| 通化市| 丰宁| 黄骅市| 唐山市| 阳曲县| 酒泉市| 卢氏县| 东阳市| 兰坪| 北碚区| 新绛县| 江城| 漾濞| 石狮市| 浏阳市| 三台县| 岑巩县| 三穗县| 南岸区| 焦作市| 闽清县| 察哈| 江陵县| 会昌县| 长泰县| 千阳县| 广东省| 山东省| 崇礼县| 梅州市| 扎鲁特旗| 察隅县| 鲜城| 溧阳市| 和龙市| 井陉县| 车险| 江口县|