setTimeout OR setInterval?

来源:http://www.cnblogs.com/Trista-l/archive/2017/04/29/6785452.html
-Advertisement-
Play Games

setTimeout 和setInterval從字面上應該是可以知道其大意的。timeout:延時;interval:間隔; 兩者的區別就像是它們自己的英文解釋一樣:setTimeout是延時執行,並且它只執行一次(ps:當然也有方法讓它無限執行);setInterval是間隔式的執行,每隔多少時間 ...


setTimeout 和setInterval從字面上應該是可以知道其大意的。timeout:延時;interval:間隔;

兩者的區別就像是它們自己的英文解釋一樣:setTimeout是延時執行,並且它只執行一次(ps:當然也有方法讓它無限執行);setInterval是間隔式的執行,每隔多少時間就執行一次。它會不斷地迴圈執行。舉個小例子:

上面說到setTimeout可以實現迴圈執行,方法也很簡單,就是用一個遞歸就可以了。(ps:遞歸可以理解為在一個函數裡面再去調用它自己)

那麼實現原理就是setTimeout在一個函數內使用,並且它的function函數參數傳遞的就是它所在的函數。一般情況下遞歸調用是需要有一個結束的條件的,不然就變成了死迴圈。在

其他編程語言中這是我們不想要的結果,但是把這個死迴圈放在我們的這個setTimeout裡面來就剛剛好可以實現間隔性的執行函數。不知道我有沒有說明白,沒有明白的話,看代碼:又舉個小例子(ps:這個例子是在某一本圖書中看到的,感覺還不錯的樣子,粘貼過來供大家學習)

script代碼塊

body代碼塊

 

 好啦,這兩者的分享就到這裡了。由於本人才疏學淺,有些地方表達不太準確或者有誤希望大家指出,共同學習。

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • XML和HTML都是W3C的定製的標準,XML的誕生本身是為了替代不成熟的HTML,但是因為現實的環境,XML替代HTML並未成功。之後W3C為了代碼嚴謹性的決心,又發佈了升級版的標記語言XHTML,但是依然因為顯示環境的主要原因,未能成功推廣,知道今天HTML5的誕生! XML簡單的特點 1. 比 ...
  • 一 HTTP概述 HTTP簡單說其實就是一套語言交流規則!Http使用的是可靠的數據傳輸協議,因此即使數據來自地球的另一端,也能夠確保數據在傳輸過程中不會被損壞或產生混亂。 B/S結構 用戶在瀏覽器,請求伺服器具體的文件地址,稱為請求協議,然後伺服器做出響應返回用戶請求的相應的信息,成為響應協議。 ...
  • 上篇文章,我們遺留的一個問題就是,請求數量有點多,雖然現在的瀏覽器的請求資源都是併發的。但是我們還是儘量減少請求量。 但是KISSY裡面這個問題我們怎麼解決呢,其實還是從data-config="{combine:false}"說起. ...
  • 目錄:http://www.cnblogs.com/idefav2010/p/6785610.html 本文將從零開始安裝KISSY環境 一、安裝nodejs 從nodejs網站下載nodejs安裝 地址: https://nodejs.org/en/download/ 二、下載KISSY 下載地址 ...
  • 本文由 "本文的原作者markyun" 收集總結。 介紹js的基本數據類型。 Undefined、Null、Boolean、Number、String、 ECMAScript 2015 新增:Symbol(創建後獨一無二且不可變的數據類型 ) 介紹js有哪些內置對象? Object 是 JavaSc ...
  • 本文由 "本文的原作者markyun" 收集總結。 介紹一下標準的CSS的盒子模型?低版本IE的盒子模型有什麼不同的? (1)有兩種, IE 盒子模型、W3C 盒子模型; (2)盒模型: 內容(content)、填充(padding)、邊界(margin)、 邊框(border); (3)區 別: ...
  • 最近在某技術網站學習一些js(JavaScript)的課程,將筆記分享一下 消息對話框1. **alert **消息對話框,輸出內容,可以是字元串或變數,與document.write 相似 var mychar="I love JavaScript"; alert(mychar);2. **con ...
  • 本文由 "本文的原作者markyun" 收集總結了一些前端面試題,初學者閱後也要用心鑽研其中的原理,重要知識需要系統學習、透徹學習,形成自己的知識鏈。萬不可投機取巧,臨時抱佛腳只求面試僥幸混過關是錯誤的!也是不可能的!不可能的!不可能的! 前端還是一個年輕的行業,新的行業標準, 框架, 庫都不斷在更 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...