JavaScript中已耗用時間函數console.time()詳細教程

來源:互聯網
上載者:User

如果需要在Web調試過程中知道代碼執行的時間,那麼可以通過在JavaScript代碼中添加console.time()語句和console.timeEnd()語句來對程式的執行進行計時。以下面這個耗時較長的foo()函數為例:

 代碼如下 複製代碼

function foo(){
    var x = 4.237;
    var y = 0;
    for (var i=0; i<100000000; i++) {
        y = y + x*x;
    }
    return y;
}



如果需要知道函數執行過程中消耗了多長時間,可以在foo()函數調用之前插入console.time()語句,在其調用結束後插入console.timeEnd()語句:

 代碼如下 複製代碼
console.time("test");
foo();
console.timeEnd("test");



程式執行完畢後,控制台會顯示此次計時的結果:”test: 1797ms”,顯示的記錄層級為info。

console.time()和console.timeEnd()接受一個字串作為參數,該字串相當於計時的id。瀏覽器會將擁有相同參數(id)的console.time()與console.timeEnd()進行配對,記錄兩者之間的時間差。因此,可以通過使用不同的id來對JavaScript程式中不同的地方進行計時。

瀏覽器支援

對於各個瀏覽器,console.time()計時的支援情況如下:

Firefox。10.0後原生支援。對於之前版本的Firefox,可以通過安裝Firebug外掛程式來實現。詳見:https://developer.mozilla.org/en-US/docs/Web/API/console.time?redirectlocale=en-US&redirectslug=DOM%2Fconsole.time
Google Chrome。2.0後原生支援。詳見:https://developers.google.com/chrome-developer-tools/docs/console-api#consoletimelabel
IE。IE11中原生支援。對於之前版本的IE,可以通過安裝Firebug Lite來實現。詳見:http://msdn.microsoft.com/en-us/library/ie/dn265071%28v=vs.85%29.aspx
Safari。4.0後原生支援。詳見:https://developer.apple.com/library/safari/documentation/AppleApplications/Conceptual/Safari_Developer_Guide/Console/Console.html
Opera。支援。詳見:http://www.opera.com/dragonfly/documentation/console/

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.