Search code examples
javascriptoptimizationtiming

How to time different parts of a loop in Javascript


Not a duplicate of How to measure time taken by a function to execute. Please actually read my question before marking it as a duplicate of something else. Regardless, it's been answered.


I have code like

for (var i = 0 ; i < 10000 ; i++) {

    doSomething();

    doSomethingElse();

}

And I want to know how much time each function inside the loop is taking overall. How do I measure that?


Solution

  • var t1;
    var t2;
    var f1Time =0;
    var f2Time =0;
    for (var i = 0 ; i < 10000 ; i++) {
        t1 = performance.now();
        doSomething();
        t2  = performance.now();
        f1Time+= (t2 - t1);
    
        t1 = performance.now();
        doSomethingElse();
        t2  = performance.now();
        f1Time+=(t2 - t1);
    
    }