Html_css_js
JS - new Map(), new Set() 사용하기
rhanziy
2022. 12. 29. 14:52
new Map() : 자료간의 연관성이나 연산을 표현하기위해 사용
// 자료이름(key)으로 글자말고도 가능.
var people = new Map();
people.set([1,2,3], '123배열Kim');
people.set('age', '20');
// people.get('key'); 자료꺼내기
// people.size // 저장된 개수
// people.delete('key') 자료삭제
for(var key of people.keys()){
console.log(key);
}
var people2 = new Map([
[ 'name', 'Lee' ],
[ 'age', '23' ]
]);
자주 쓰이진 않는다 ㅋ 콘솔 찍어보면
Map(2) {Array(3) => '123배열Kim', 'age' => '20'} 이렇게 화살표 형식으로 나옴.
new Set() : 중복자료를 허용하지 않는 Array를 만들 때 사용
var 출석부 = ['John', 'tom', 'andy', 'tom'];
var 출석부2 = new Set(['John', 'tom', 'andy', 'tom']);
출석부2.add('sally'); // 값 추가
출석부2.delete('sally') // 값 삭제
출석부2.has('sally') // 값 있나 확인
출석부2.size // 몇개있나
// Set 자료형(obj형식) <-> Array자료형
출석부 = [...출석부2];
set 자료형에는 add로 값을 추가할 수 있다.
만들어진 출석부2를 콘솔에 찍어보면
Set(3) {'John', 'tom', 'andy'} 이렇게 대괄호 안이 아닌 중괄호 안에 담겨져있는데,
Array형식으로 바꿔주려면 [...출석부2] 로 중괄호 벗겨내고 대괄호로 싸주면댐.