Maps 및 Sets는 ES6(ECMAScript 2015)에 도입된 두 가지 중요한 데이터 구조로 기존 객체 및 배열에 비해 향상된 기능을 제공합니다. 지도와 세트를 모두 사용하면 고유한 값을 저장하고 보다 체계적이고 효율적인 방식으로 데이터를 사용할 수 있습니다.
맵은 키와 값이 모두 임의의 데이터 유형일 수 있는 키-값 쌍의 모음입니다. 문자열이나 기호만 키로 가질 수 있는 객체와 달리 맵에서는 모든 값(객체, 배열, 함수 등)을 키로 사용할 수 있습니다.
지도를 생성하려면 지도 생성자를 사용할 수 있습니다.
const map = new Map();
또는 키-값 쌍 배열로 맵을 초기화할 수도 있습니다.
const map = new Map([ ['name', 'Alice'], ['age', 25], ['city', 'New York'] ]); console.log(map);
set() 메소드를 사용하여 항목을 추가할 수 있습니다.
const map = new Map(); map.set('name', 'John'); map.set('age', 30); map.set('city', 'Los Angeles'); console.log(map);
get() 메소드를 사용하여 키와 연관된 값에 액세스할 수 있습니다.
const map = new Map([ ['name', 'Alice'], ['age', 25] ]); console.log(map.get('name')); // Output: Alice console.log(map.get('age')); // Output: 25
키가 존재하는지 확인하려면 has() 메소드를 사용하세요.
const map = new Map([ ['name', 'John'], ['age', 30] ]); console.log(map.has('name')); // Output: true console.log(map.has('city')); // Output: false
delete() 메소드를 사용하여 키-값 쌍을 제거할 수 있습니다.
map.delete('age'); console.log(map.has('age')); // Output: false
지도에서 모든 항목을 삭제하려면:
map.clear(); console.log(map.size); // Output: 0
forEach() 또는 for...of 루프를 사용하여 맵의 키-값 쌍을 반복할 수 있습니다.
const map = new Map([ ['name', 'Alice'], ['age', 25] ]); // Using forEach map.forEach((value, key) => { console.log(key, value); }); // Using for...of for (const [key, value] of map) { console.log(key, value); }
세트는 고유한 값의 모음입니다. 즉, 중복된 값을 자동으로 제거합니다. 여러 개의 동일한 요소를 저장할 수 있는 배열과 달리 세트는 컬렉션의 모든 값이 고유한지 확인합니다.
Set 생성자를 사용하여 Set을 생성할 수 있습니다.
const set = new Set();
또는 값 배열로 Set을 초기화할 수도 있습니다.
const set = new Set([1, 2, 3, 4, 5]); console.log(set);
add() 메소드를 사용하여 Set에 값을 추가할 수 있습니다.
const set = new Set(); set.add(1); set.add(2); set.add(3); set.add(2); // Duplicate value, won't be added console.log(set); // Output: Set { 1, 2, 3 }
Set에 값이 있는지 확인하려면 has() 메서드를 사용하세요.
console.log(set.has(2)); // Output: true console.log(set.has(4)); // Output: false
delete() 메소드를 사용하여 Set에서 값을 제거할 수 있습니다.
const map = new Map();
세트에서 모든 값을 지우려면:
const map = new Map([ ['name', 'Alice'], ['age', 25], ['city', 'New York'] ]); console.log(map);
forEach() 또는 for...of 루프를 사용하여 Set의 값을 반복할 수 있습니다.
const map = new Map(); map.set('name', 'John'); map.set('age', 30); map.set('city', 'Los Angeles'); console.log(map);
Feature | Map | Set |
---|---|---|
Storage | Stores key-value pairs | Stores unique values only |
Key Types | Any type (objects, arrays, primitive types) | Only values (no keys) |
Uniqueness | Keys must be unique, values can repeat | Values must be unique |
Order of Elements | Iterates in insertion order | Iterates in insertion order |
Size | map.size | set.size |
Methods | set(), get(), has(), delete(), clear() | add(), has(), delete(), clear() |
크기
사용자 기본 설정 저장
맵은 모든 데이터 유형을 키로 지원하는 효율적인 키-값 쌍 저장소를 제공하며 삽입 순서를 유지합니다.
세트
위 내용은 JavaScript에서 맵 및 세트 작업: 종합 안내서의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!