Unlike plain objects, a Map accepts any key type (objects, functions, not just strings), keeps insertion order, has a real .size, and is directly iterable. Use set, get, has, delete. Reach for Map when keys aren't strings or you need frequent add/remove and size.