Представьте, что у нас данных больше чем 3 вложенных объекта (представьте, что у нас их 10000000)..



И вот стоит задача: найти в массиве город, айди которого = 3!



В случае обыного массива, нужно пробежаться в худшем случае по всем 10000000 элементам (сложность O(n)) с помощью filter:

let city = cities.filter( с => c.id === 3)[0];



А в случае с ассоциативным массивом это делается мгновенно (сложность O(1)) :

let city = citiesObj["3"];