Script Preparation code:
AخA
 
const data = Array.from(Array(1000).keys());
var map = new Map(data.map((o) => [o, o]));
var array = [...data];
Tests:
  • iterate on map with values() and filter

     
    const filtered = [];
    for (const o of map.values()) {
      if (o%2 === 0) filtered.push(o);
    }
  • iterate on map with forEach() and filter

     
    const filtered = [];
    map.forEach(o => {
      if (o%2 === 0) filtered.push(o)
    });
      
  • iterate on array and filter

     
    const filtered = array.filter(o => o % 2 === 0);
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    iterate on map with values() and filter
    iterate on map with forEach() and filter
    iterate on array and filter

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 3 years ago)
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.93 Safari/537.36
Chrome 96 on Windows
View result in a separate tab
Test name Executions per second
iterate on map with values() and filter 155168.3 Ops/sec
iterate on map with forEach() and filter 55770.3 Ops/sec
iterate on array and filter 193974.1 Ops/sec