declarative vs imperative

Benchmark created on


Test runner

Ready to run.

Testing in
TestOps/sec
imperative
var numbers = [1,2,3,4,5,6,7,8,9,10];

var filterImperatively = (numbers) => {
  let filtered = [];
  for (let i = 0; i < numbers.length; i++) {
    if (numbers[i] % 2 === 0) {
      filtered.push(numbers[i]);
    }
  }
  return filtered;
};

filterImperatively(numbers)
ready
declarative
var numbers = [1,2,3,4,5,6,7,8,9,10];

var filterDeclaratively = (numbers) => {
  return numbers.filter(isEvenNumber);
};

var isEvenNumber = (number) => {
  return number % 2 === 0;
}

filterDeclaratively(numbers);
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.