Run details:
Mozilla/5.0 (iPhone; CPU iPhone OS 18_1_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.1.1 Mobile/15E148 Safari/604.1
Mobile Safari 18
iOS 18.1.1
Mobile
2 months ago
Test name Executions per second
Array.find, 10 000 elements 148847.3 Ops/sec
Map.get, 10 000 elements 261985280.0 Ops/sec
Array.find, 1 000 000 elements 1336.7 Ops/sec
Map.get, 1 000 000 elements 250264688.0 Ops/sec
Array to Map + Map.get, 1 lookup 3118.2 Ops/sec
Array to Map + Map.get, 10 lookups 2532.0 Ops/sec
Array to Map + Map.get, 100 lookups 1488.0 Ops/sec
Array.find, 10 lookups 9353.4 Ops/sec
Array.find, 100 lookups 778.1 Ops/sec
Script Preparation code:
Tests:
  • Array.find, 10 000 elements

  • Map.get, 10 000 elements

  • Array.find, 1 000 000 elements

  • Map.get, 1 000 000 elements

  • Array to Map + Map.get, 1 lookup

  • Array to Map + Map.get, 10 lookups

  • Array to Map + Map.get, 100 lookups

  • Array.find, 10 lookups

  • Array.find, 100 lookups