Run details:
Mozilla/5.0 (iPhone; CPU iPhone OS 18_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.5 Mobile/15E148 Safari/604.1
Mobile Safari 18
iOS 18.5
Mobile
one year ago
Map.get, 10 000 elements
269.9M/s
Map.get, 1 000 000 elements
249.7M/s
Array.find, 10 000 elements
184K/s
Array.find, 10 lookups
11K/s
Array to Map + Map.get, 10 lookups
4K/s
Array to Map + Map.get, 1 lookup
4K/s
Array to Map + Map.get, 100 lookups
3K/s
Array.find, 1 000 000 elements
1K/s
Array.find, 100 lookups
768/s
View exact numbers
Test name Executions per second
Map.get, 10 000 elements 269,919,680 Ops/sec
Map.get, 1 000 000 elements 249,713,472 Ops/sec
Array.find, 10 000 elements 183,848 Ops/sec
Array.find, 10 lookups 11,372 Ops/sec
Array to Map + Map.get, 10 lookups 3,763 Ops/sec
Array to Map + Map.get, 1 lookup 3,640 Ops/sec
Array to Map + Map.get, 100 lookups 3,354 Ops/sec
Array.find, 1 000 000 elements 1,293 Ops/sec
Array.find, 100 lookups 768 Ops/sec
Script Preparation code:
Tests: