Skip welcome & menu and move to editor
Welcome to JS Bin
Load cached copy from
 
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
</head>
<body>
<input type="button" id="the-button" value="Test">
<div id="results" style="display: none">
  Tests so far: <span id="testcount">0</span>
  <br>Rough resolution: <span id="resolution"></span>
</div>
<script>
  (function() {
    "use strict";
    // This version avoids using anything IE8 doesn't have, to be compatible with really old browsers
    
    if (!Date.now) {
      Date.now = function() {
        return new Date().getTime();
      };
    }
    
    var testcount = document.getElementById("testcount");
    var resolution = document.getElementById("resolution");
    
    document.getElementById("the-button").onclick = function() {
      var sum = 0;
      var n = 0;
      log("Checking this browser's Date object resolution...");
      document.getElementById("results").style.display = "";
      setTimeout(batch, 50);
      
      function batch() {
        var target = n + 1000;
        while (n < target) {
          sum += test();
          ++n;
        }
        testcount.innerHTML = n;
        resolution.innerHTML = (sum / n) + "ms";
        if (n < 10000) {
          setTimeout(batch, 50);
        } else {
          log("Done");
        }
      }
    };
    function test() {
      var x = Date.now();
      var y;
      do {
        y = Date.now();
      } while (x == y);
      return y - x;
    }
  
    function log(msg) {
      var p = document.createElement("p");
      p.appendChild(document.createTextNode(msg));
      document.body.appendChild(p);
    }
  })();
</script>
</body>
</html>
Output

You can jump to the latest bin by adding /latest to your URL

Dismiss x
public
Bin info
anonymouspro
0viewers