Run details:
Mozilla/5.0 (iPhone; CPU iPhone OS 17_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4.1 Mobile/15E148 Safari/604.1
Mobile Safari 17
iOS 17.4.1
Mobile
2 years ago
Map.get, 10 000 elements
4.8M/s
Map.get, 1 000 000 elements
4.6M/s
Array.find, 10 000 elements
146K/s
Array.find, 10 lookups
8K/s
Array to Map + Map.get, 1 lookup
2K/s
Array to Map + Map.get, 100 lookups
2K/s
Array to Map + Map.get, 10 lookups
2K/s
Array.find, 1 000 000 elements
1K/s
Array.find, 100 lookups
215/s
View exact numbers
Test name Executions per second
Map.get, 10 000 elements 4,837,706 Ops/sec
Map.get, 1 000 000 elements 4,550,984 Ops/sec
Array.find, 10 000 elements 146,220 Ops/sec
Array.find, 10 lookups 7,710 Ops/sec
Array to Map + Map.get, 1 lookup 2,486 Ops/sec
Array to Map + Map.get, 100 lookups 1,826 Ops/sec
Array to Map + Map.get, 10 lookups 1,791 Ops/sec
Array.find, 1 000 000 elements 1,303 Ops/sec
Array.find, 100 lookups 215 Ops/sec
Script Preparation code:
Tests: