Hi guys I've been learning about Map in JavaScript and how we can use it instead of object in some practical situations.
In my learning journey I've found in JavaScript the Definitive Guide - David Flanagan that he mentions Map are, quote:
Remember, though, that a map is a set of keys, each of which has an associated value. This is not quite the same as a set of key/value pairs. If you call set() with a key that already exists in the map, you will change the value associated with that key, not add a new key/value mapping
But then I go to MDN and they're saying the opposite, so what do I follow or believe?, also, isn't there like an official technical definitio for this?, I have to check out EcmaScript 6...
Note: at the moment of writing this post I've found in the official ES6 documentation that indeed MDN is right, Map are a set of key/value pairs... Why did I spent my money on David Flanagan smh
Anyway I'll leave the question open in case there is something I'm missing, thank you in advance.

I'd say that it is more language question than technical. Because overall they all right. MDN says as usually technickal documentation says. At the same time the quote you provided tries to emphasize that for the map unique is only key and not key/value. I think this way he tried to show differense between
Map.set('a', 1)andArray.push({a: 1}).