Set 2

Set

Set에 관해 몇번 째 작성하는 블로그인지 모르겠다. 지식이 축적되면서 보이지 않던것이 보이는 거겠지..? 🤧 Set의 type은 object이다. 어찌보면 당연한 얘기이다. 배열의 type도 object이고, prototype이 Array이기 때문이다. Set의 prototype도 배열처럼 Set을 prototype으로 갖고 있는다. 즉슨, Set의 instance이다. Set은 객체의 형태로 담기며{}, 배열의 특징과 유사하다. 객체처럼 생겼으나, 배열과 비슷하다. Set은 중복 된 값을 같지 않는다. 하지만, 원시형 데이터 타입이 아닌 참조형 데이터 타입일 경우, 주소값이 담기기 때문에 중복되어 Set에 담길 수 있다. 하지만 값을 꺼내보거나, 수정, 삭제는 불가능하다. 밖에서 객체와 같은 값으로 ..

TIL/JS 2023.03.28

new Map 다수의 key, value 초기화

Map은 key와 value를 받아 object로서 생성 한다는 특징이 있다. 이전에 공부했을 때, Map은 배열로서 묶음으로 전달함으로써 여러개의 값을 할당 할 수 있다는 것을 알았다. 그런데 생성 한 후에 set을 통해 다수의 key와 value로 할당 하였는데 생각과 다르게 할당이 되었다. 그래서 초기화 했을 때와 할당 했을 때 코드를 작성해 본 결과, 이유를 알게 되었다. Set과 Map은 초기화 할 때만 []를 배열로 인식 하지 않고, 다수의 값으로 받아 들인다는 것이다. 그래서 new Map(['x', 1], ['y', 2]) 로 작성했다. 그런데 결과는 ['x', 1] 을 키로 인식하고, ['y', 2]를 value로 인식했다. Map은 두개의 인자를 받고, key와 value로 인식하기 때..

TIL/JS 2023.03.20