RxJS Performance measurement

by stot

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/rxjs/2.2.10/rx.js"></script>
<div id="console">
  calculating ...
</div>

JavaScript

var dataPoints = 3000000;
var range =  Rx.Observable.range(0, dataPoints);
var end = 0;
var domConsole = document.getElementById('console');
var start = performance.now();

range.subscribe(
    function (x) {		// data
    	//console.log(x);
    },
    function (err) {	// error
    },
    function () {			// done
    	end = performance.now();
      var elapsed = end - start;
      var fps = Math.round( 1000/elapsed * dataPoints);
      console.log( 'Completed ' + dataPoints +  ' in ' + Math.round(end-start) + 'ms');   
      domConsole.innerHTML = 'Completed ' + dataPoints +  ' in ' + Math.round(end-start) + 'ms';
      console.log( fps + ' per second');
      domConsole.innerHTML = domConsole.innerHTML + fps + ' per second';
    });
console.log("Hello World")