- Published on
Map vs Object in Javascript
Keys. Object key is strings or symbols. Map keys can also be numbers (1 and "1" are different), objects,
NaN, etc. It uses===to distinguish between keys, with one exceptionNaN !== NaNbut you can useNaNas a key.Order. The insertion order is remembered. So
[...map]or[...map.keys()]has a particular order.Interface. Object:
obj[key]orobj.a(in some language,[]and[]=are really part of the interface). Map hasget(),set(),has(),delete()etc. Note that you can usemap[123], but that is using it as a plain JavaScript object.