timing & sleep

JavaScript

// timing reference
// https://developer.mozilla.org/en-US/docs/Web/API/Performance/now
// 
// The Performance.now() method returns a DOMHighResTimeStamp, 
// measured in milliseconds, accurate to one thousandth of a millisecond.

//////// first example with 120000 calls to arc-sin ////////////////
function doSomething() {
	for (var i = 0; i < 120000; i++)
    	var a = Math.asin (0.45);
}
var t0 = performance.now();
doSomething();
var t1 = performance.now();
console.log("Call to doSomething took " + (t1 - t0) + " milliseconds.")

/////// second example with 'sleep' like function ///////////////////////

var tt0, tt1;
function sleep (mseconds) {
	console.log("start sleeping ...");
	setTimeout(function(){
    	console.log("stop!");
        tt1 = performance.now();
        console.log ('slept for ' + (tt1-tt0) + ' msecs');
	}, mseconds);
}
tt0 = performance.now();
sleep (5000);