Javascript HTTP request time

Is it possible to get the time of how long it took to send an http request in javascript? This is my code right now:

function httpGet(theUrl)
    t = new Date().getTime()
    var xmlHttp = new XMLHttpRequest(); "GET", theUrl, false );
    xmlHttp.send( null );
    return new Date().getTime() - t;

The time in milliseconds returned is a bit inaccurate, is there a way to have a more accurate time displayed?

Possible issues:

  • If you’re testing with a URL that’s cacheable, it might end up not doing any HTTP.
  • Date uses wall time, which might get adjusted and throw off comparisons. - Web APIs | MDN Supposedly works better.

Also, unrelated to this question, I’m required to say “oh no you’re using synchronous xhr.”