수색…


통사론

  • 새지도 ([iterable])
  • map.set (key, value)
  • map.get (key)
  • map.size
  • map.clear ()
  • map.delete (키)
  • map.entries ()
  • map.keys ()
  • map.values ​​()
  • map.forEach (콜백 [, thisArg])

매개 변수

매개 변수 세부
iterable [key, value] 쌍을 포함하는 반복 가능한 모든 객체 (예 : 배열)입니다.
key 요소의 키.
value 키에 지정된 값입니다.
callback 콜백 함수는 value, key 및 map이라는 세 개의 매개 변수로 호출됩니다.
thisArg 로 사용될 값 this 실행할 때 callback .

비고

지도에서 NaN NaN !== NaN 인 경우에도 NaN !== NaNNaN 과 동일한 것으로 간주됩니다. 예 :

const map = new Map([[NaN, true]]);
console.log(map.get(NaN)); // true

지도 만들기

Map은 키와 값의 기본 매핑입니다. 지도는 문자열과 기호뿐만 아니라 키가 아무 것도 될 수 있다는 점에서 객체와 다릅니다 (객체뿐만 아니라 프리미티브 값). 맵을 통한 반복은 항목이 Map에 삽입 된 순서대로 항상 수행되는 반면 객체의 키를 반복 할 때는 순서가 정의되지 않습니다.

지도를 만들려면 Map 생성자를 사용하십시오.

const map = new Map();

선택적 매개 변수를 가지며 두 요소의 배열을 포함하는 반복 가능한 모든 객체 (예 : 배열)가 될 수 있습니다. 첫 번째는 키이고 초는 값입니다. 예 :

const map = new Map([[new Date(), {foo: "bar"}], [document.body, "body"]]);
//                      ^key          ^value          ^key        ^value

지도 지우기

Map에서 모든 요소를 ​​제거하려면 .clear() 메서드를 사용합니다.

map.clear();

예:

const map = new Map([[1, 2], [3, 4]]);
console.log(map.size); // 2
map.clear();
console.log(map.size); // 0
console.log(map.get(1)); // undefined

지도에서 요소 제거

맵에서 요소를 제거하려면 .delete() 메소드를 사용하십시오.

map.delete(key);

예:

const map = new Map([[1, 2], [3, 4]]);
console.log(map.get(3)); // 4
map.delete(3);
console.log(map.get(3)); // undefined

이 메소드는 요소가 존재하고 제거 되었으면 true 반환하고 그렇지 않으면 false 반환 true .

const map = new Map([[1, 2], [3, 4]]);
console.log(map.delete(1)); // true
console.log(map.delete(7)); // false

지도에 키가 있는지 확인하기

맵에 키가 있는지 확인하려면 .has() 메소드를 사용하십시오.

map.has(key);

예:

const map = new Map([[1, 2], [3, 4]]);
console.log(map.has(1)); // true
console.log(map.has(2)); // false

지도 반복

Map에는 반복자를 반환하는 세 가지 메서드가 있습니다. .keys() , .values().entries() . .entries() 는 기본 Map 반복자이며 [key, value] 쌍을 포함합니다.

const map = new Map([[1, 2], [3, 4]]);

for (const [key, value] of map) {
  console.log(`key: ${key}, value: ${value}`);
  // logs:
  // key: 1, value: 2
  // key: 3, value: 4
}

for (const key of map.keys()) {
  console.log(key); // logs 1 and 3
}

for (const value of map.values()) {
  console.log(value); // logs 2 and 4
}

Map에는 .forEach() 메소드도 있습니다. 첫 번째 파라미터는 맵의 각 요소에 대해 호출 될 콜백 함수이고, 두 번째 파라미터로서 사용되는 값 this 콜백 함수를 실행하는 경우.

콜백 함수에는 value, key 및 map 객체의 세 가지 인수가 있습니다.

const map = new Map([[1, 2], [3, 4]]);
map.forEach((value, key, theMap) => console.log(`key: ${key}, value: ${value}`));
// logs:
// key: 1, value: 2
// key: 3, value: 4

요소 가져 오기 및 설정

.get(key) 를 사용하여 키로 값을 가져오고 .set(key, value) 를 사용하여 .set(key, value) 을 지정하십시오.

지정된 키가있는 요소가 맵에 없으면 .get()undefined 반환합니다.

.set() 메소드는 map 객체를 반환하므로 .set() 호출을 연결할 수 있습니다.

const map = new Map();
console.log(map.get(1)); // undefined
map.set(1, 2).set(3, 4);
console.log(map.get(1)); // 2

지도의 요소 수 얻기

Map의 요소 수를 얻으려면 .size 속성을 사용합니다.

const map = new Map([[1, 2], [3, 4]]);
console.log(map.size); // 2


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow