Performance test 1

by Arnaud Buchholz

JavaScript

function log (text) {
	var line = document.createElement("div");
  line.appendChild(document.createTextNode(text));
  document.body.appendChild(line);
}

function test (label, cb) {
	var dtStart = new Date(),
  		count = 0;
  while (new Date() - dtStart < 1000) {
  	cb();
    ++count;
  }
  log(label + ": " + count);
}

test("Changing parameter", function () {

	function addName(changing) {
  	changing.member = "Test";
  }
  
  function doNothing (changing) {
  }
  
  var result = {};
  addName(result);
  doNothing(result);
});

test("Functional approach", function () {

	function addName () {
  	return {
    	member: "Test"
    };
  }
  
  function doNothing () {
  }

	var result = {};
  Object.assign(result, addName(), doNothing());
});