Используйте карты поверх объектов, когда ключи неизвестны до времени выполнения, и когда все ключи одного типа и все значения одного типа.
Используйте объекты, когда есть логика, которая работает с отдельными элементами.
Вопрос:
Каков применимый пример использования карт поверх объектов? в частности, «когда ключи будут неизвестны до времени выполнения?»
var myMap = new Map();
var keyObj = {},
keyFunc = function () { return 'hey'},
keyString = "a string";
// setting the values
myMap.set(keyString, "value associated with 'a string'");
myMap.set(keyObj, "value associated with keyObj");
myMap.set(keyFunc, "value associated with keyFunc");
console.log(myMap.get(keyFunc));