[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Map [Back]  [Original]

Map - JavaScript | MDN

MDN Web Docs

View in English Always switch to English

Map

Baseline *

20157

*

Map

const map = new Map();

map.set("a", 1);
map.set("b", 2);
map.set("c", 3);

console.log(map.get("a"));
// : 1

map.set("a", 97);

console.log(map.get("a"));
// : 97

console.log(map.size);
// : 3

map.delete("b");

console.log(map.size);
// : 2

Map Map Map Map for...of [, ] 2 set() set()

O(N) O(1) O(log(N))

SameValueZero SameValue 0 -0 NaN NaN NaN !== NaN === Map

Object Map

Object Map Object Map

Map

Map Object
Map

Object

Map

Object null-prototype

Map Object

Map Map

Object

ECMAScript 2015 ECMAScript 2020 for-in Object.keys Object.getOwnPropertyNames Object.getOwnPropertySymbols Symbol

Map size Object Object.keys() length
Map Object

Object JavaScript for...of

replacer JSON.stringify() reviver JSON.parse() Map Stack Overflow How do you JSON.stringify an ES6 Map?

Object JSON JSON.stringify()

JSON Object JSON.parse()

Map

js
const wrongMap = new Map();
wrongMap["bla"] = "blaa";
wrongMap["bla2"] = "blaaa2";

console.log(wrongMap); // Map { bla: 'blaa', bla2: 'blaaa2' }

Map 'bla' Map

js
wrongMap.has("bla"); // false
wrongMap.delete("bla"); // false
console.log(wrongMap); // Map { bla: 'blaa', bla2: 'blaaa2' }

Map set(key, value)

js
const contacts = new Map();
contacts.set("Jessie", { phone: "213-555-1234", address: "123 N 1st Ave" });
contacts.has("Jessie"); // true
contacts.get("Hilary"); // undefined
contacts.set("Hilary", { phone: "617-555-4321", address: "321 S 2nd St" });
contacts.get("Jessie"); // {phone: "213-555-1234", address: "123 N 1st Ave"}
contacts.delete("Raymond"); // false
contacts.delete("Jessie"); // true
console.log(contacts.size); // 1

Map API

Map (Map ) Map Web API

Map Map Map Map

IDL RTCStatsReport Map IDL

webidl
interface RTCStatsReport {
  readonly maplike<DOMString, object>;
};

Map ( IDL readonly )

Map

Map

Map()

Map

Map[Symbol.species]

Map.groupBy()

Map

Map.prototype Map

Map.prototype.constructor

Map Map

Map.prototype.size

Map

Map.prototype[Symbol.toStringTag]

[Symbol.toStringTag] "Map" Object.prototype.toString()

Map.prototype.clear()

Map

Map.prototype.delete()

Map

Map.prototype.entries()

Map [key, value] 2

Map.prototype.forEach()

Map callbackFn thisArg forEach this

Map.prototype.get()

Map undefined

Map.prototype.getOrInsert()

Map

Map.prototype.getOrInsertComputed()

Map

Map.prototype.has()

Map

Map.prototype.keys()

Map

Map.prototype.set()

Map

Map.prototype.values()

Map

Map.prototype[Symbol.iterator]()

Map [key, value]

Map

js
const myMap = new Map();

const keyString = "";
const keyObj = {};
const keyFunc = () => {};

// 
myMap.set(keyString, "'' ");
myMap.set(keyObj, "keyObj ");
myMap.set(keyFunc, "keyFunc ");

console.log(myMap.size); // 3

// 
console.log(myMap.get(keyString)); // "'' "
console.log(myMap.get(keyObj)); // "keyObj "
console.log(myMap.get(keyFunc)); // "keyFunc "

console.log(myMap.get("")); // "'' " keyString === '' 
console.log(myMap.get({})); // undefined, keyObj !== {} 
console.log(myMap.get(() => {})); // undefined, keyFunc !== () => {} 

NaN Map

NaN NaN NaN !== NaN NaN

js
const myMap = new Map();
myMap.set(NaN, "not a number");

myMap.get(NaN);
// "not a number"

const otherNaN = Number("foo");
myMap.get(otherNaN);
// "not a number"

for..of Map

for..of

js
const myMap = new Map();
myMap.set(0, "zero");
myMap.set(1, "one");

for (const [key, value] of myMap) {
  console.log(`${key} = ${value}`);
}
// 0 = zero
// 1 = one

for (const key of myMap.keys()) {
  console.log(key);
}
// 0
// 1

for (const value of myMap.values()) {
  console.log(value);
}
// zero
// one

for (const [key, value] of myMap.entries()) {
  console.log(`${key} = ${value}`);
}
// 0 = zero
// 1 = one

forEach() Map

forEach()

js
myMap.forEach((value, key) => {
  console.log(`${key} = ${value}`);
});
// 0 = zero
// 1 = one

Array

js
const kvArray = [
  ["1", "1"],
  ["2", "2"],
];

//  Map  2 
const myMap = new Map(kvArray);

console.log(myMap.get("1")); // "1"

//  2 
console.log(Array.from(myMap)); // kvArray  Array 

// 
console.log([...myMap]);

//  keys()  values() 
console.log(Array.from(myMap.keys())); // ["key1", "key2"] 

Map

Array Map

js
const original = new Map([[1, "one"]]);

const clone = new Map(original);

console.log(clone.get(1)); // one
console.log(original === clone); // false 

: Map

js
const first = new Map([
  [1, "one"],
  [2, "two"],
  [3, "three"],
]);

const second = new Map([
  [1, "uno"],
  [2, "dos"],
]);

// 2 
//  Map  Array 
const merged = new Map([...first, ...second]);

console.log(merged.get(1)); // uno
console.log(merged.get(2)); // dos
console.log(merged.get(3)); // three

Map Array

js
const first = new Map([
  [1, "one"],
  [2, "two"],
  [3, "three"],
]);

const second = new Map([
  [1, "uno"],
  [2, "dos"],
]);

// 
const merged = new Map([...first, ...second, [1, "un"]]);

console.log(merged.get(1)); // un
console.log(merged.get(2)); // dos
console.log(merged.get(3)); // three

ECMAScript 2027 LanguageSpecification
# sec-map-objects


Web Proxy Viewer  |  New URL  |  Original Page