Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Map() delete while iterating vs clear
When iterating over a Map and clearing after iteration is required, is it faster to remove items at each iteration step or is it faster to iterate and then clear() the entire Map afterwards?
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:134.0) Gecko/20100101 Firefox/134.0
Browser:
Firefox 134
Operating system:
Mac OS X 10.15
Device Platform:
Desktop
Date tested:
one year ago
Test name
Executions per second
Iterate + clear
20802818.0 Ops/sec
Iterate + delete
25416440.0 Ops/sec
Script Preparation code:
var dummy = 0; var map = new Map(new Array(100).fill(null).map((_, i) => [ function(incrementBy) { dummy += incrementBy; }, { incrementBy: i } ]));
Tests:
Iterate + clear
for (const [fn, obj] of map) { fn(obj.incrementBy); } map.clear();
Iterate + delete
for (const [fn, obj] of map) { fn(obj.incrementBy); map.delete(fn); }