본문 바로가기

자바스크립트11

[JS][자바스크립트]워크맵과 워크셋 1. 위크맵과 위크셋 (javascript.info) 위크맵과 위크셋 ko.javascript.info 가비지컬렉션에서는 맵이나 셋의 키로 사용된 객체의 경우 해당 맵이나 셋이 존재할시 메모리에서 해제 되지 않는다. 위크맵은 키로 객체만을 사용 가능한 맵이다. GC에 관한 문제로 기본적인 이터러블 메서드를 제공하지 않는다. 부가적인 데이터나 캐싱등의 기능을 개발할때 따로 관리 할 필요가 없어서 유용한 편이다. 위크셋은 위크맵과 마찬가지로 객체만 저장 가능한 셋이다. 마찬가지로 이터러블 메서드를 제공하지 않는다. 그 외는 같다. # 사용법 1. new WeakMap(); new WeakSet(); 생성한다. 2. 이터러블 관련된 메서드인 엔트리, 벨류, 키를 지원하지 않는다. 3. 특정 객체에 대한 추가적.. 2021. 7. 5.
[JS][자바스크립트]맵과 셋 1. 맵과 셋 (javascript.info) 맵과 셋 ko.javascript.info Map은 객체와 유사한 성격을 가진다. 객체와 다른점은 여러가지 전용 메소드들과 객체키와 NaN키를 허용한다는 점과 따로 설정없이 이터러블 속성을 가진다는 점과 keys, value, entries, forEach 내장 메서드를 기본 지원 하고 있다. 그리고 삽입 순서를 기억한다. 등가비교에는 SameValueZero(수정불가) 알고리즘을 사용한다. Set은 중복을 허용하지 않는 이터러블 객체이다. Set에는 키가 없는 값이 저장된다. 삽입 순서를 기억하고, 키에 제한이 없는 Map과, 중복을 제거하는데 유용한 Set 물론 Set도 삽입순서를 기억한다. 일반적인 객체나 배열을 사용하는 것과 비교해서 특정 사항에서 해.. 2021. 7. 1.
프론트엔드 설계 및 디자인 패턴 프론트엔드를 혼자 공부하고 개발하면서 개인적으로 효율적이라고 생각하고 만든 구조중 하나입니다. CSR 기준으로 되어 있습니다. # 리액트 & 웹팩 설정 ### 루트 1. root - 패키지 매니저, 깃, 웹팩, 기타 플러그인 설정이 위치한다. 2. build - 웹팩 세부 설정 & 플로그인등 셋팅이 존재한다. 3. public - 정적파일 보통 index.html이 존재한다. 4. src - 개발한 모든 소스가 존재한다. 5. dist - 웹팩을 통해서 빌드된 프로덕트 소스가 존재한다. 6. etc - types, .storybook 등 폴더가 선택적으로 존재한다. ### SRC 1. assets - 정적 리소스, img나 웹폰트등이 존재한다. 경우에 따라서 css나 js 파일도 있을 수 있다. 2. c.. 2021. 6. 28.
[JS][자바스크립트] 객체 와 원시 자료형 1. 객체 형변환 튜토리얼 - https://ko.javascript.info/object-toprimitive 객체를 원시형으로 변환하기 ko.javascript.info 자바스크립트에서 객체는 원시 자료형이 아니다. 그렇기에 객체를 대상으로 원시 자료형을 요구하면 객체는 자동으로 원시형으로 형변환을 하게된다. 객체의 형변환이 발생할때 해당 작업에서 요구되는 자료형을 힌트의 방식으로 결정한다. 힌트의 경우 총 3가지 있고 string, number, default가 있다. 문자열의 경우 string을 숫자의 경우 number을 hint하고 default는 그 자료형이 확실치 않을때 hint한다. 실제로 처리 과정에서 string을 제외한 number와 default 힌트는 대부분 같은 계산로직을 따르므.. 2021. 6. 27.