자바스크립트 인터프리터가 함수의 선언, 할당, 실행을 나눠해서 모든 선언이 코드의 선두로 끌어올려진 것처럼 동작하는 현상의 개념 즉, 자바스크립트 엔진이 실행컨텍스트가 활성화 될 때 변수정보를 수집하는데 이때 실제 끌어올려지지는 않았지만 수집과정에서 엔진이 수집된 정보를 토대로 변수들을 알고 있기 때문에 끌어올려진 것으로 간주하는 개념 설명보기 Q. var, let 둘 다 호이스팅이 된다? - 정답은 둘 다 호이스팅되나 동작때문에 var만 실행 시 에러가 나지 않는다. 이때문에 var만 호이스팅된다고 착각할 수 있다. 설명 var는 선언과 할당을 동시에 실행하므로 호이스팅되었을때, undefined가 메모리에 저장된다. let은 선언과 할당을 별도로 실행한다. 따라서 호이스팅되었을때, 선언은 되었지만 할..
실행 컨텍스트는 실행한 코드에 제공 할 환경 정보들을 모아놓는 객체라고 생각하자. 콜 스택에 쌓아서 전체 코드를 관리하고 있어서 환경과 순서를 보장한다. 동작 실행 컨텍스트는 크게 3가지 동작을 한다. 내부 환경 정보 기록: 실행컨텍스트가 활성화 되는 시점(실행)에 선언된 변수를 수집한다. 외부 환경 정보를 구성한다. this 값을 설정하는 동작 구성 수집 정보 - 자바스크립트 엔진이 활용할 목적으로 생성할 뿐, 개발자가 코드에 접근 할 수 없다. Variable Environment 선언 시점의 Lexical Environment의 스냅샷이므로 변경사항이 반영되지 않는다. Variable Environment를 생성하여 정보를 담고 복사하여 Lexical Environment를 만든다. Lexical ..
Nuxtjs + Typescript 프로젝트를 진행하고 있는데, 초반 설정부터 많은 문제가 생겼다. 이전에 작업할 때는 내가 린트 설정한 적이 없어서 생기는 문제인지, (내 머리탓) 아니면 버전(현재 v2.15.8)이 달라져서 혹은 Typescript 설정으로 생기는 문제인지 모르겠으나. 결론은 골치아픈 린트 설정 문제였다. 그래서 이렇게 골치아픈 김에 이것저것 검색해보고 설정하는데 꽤나 시간을 들이고 있다. (eslint, prettier, stylelint....) 덕분에 설정에만 시간을 엄청 쏟고 있다. 뻘짓에 대한 기록글과 해결한 방법 (은 하단에!) 과정에 대한 글 .stylelintrc.js - 실패 이렇게 더러운걸 커밋했다고? ㅎㅎㅎㅋㅋㅋㅋ module.exports = { customSyn..
isUndefined와 isEmpty 비교 console.log('빈 배열', `isUndefined: ${isUndefined([])} / isEmpty: ${isEmpty([])}`); console.log('빈 오브젝트', `isUndefined: ${isUndefined({})} / isEmpty: ${isEmpty({})}`); console.log('빈 문자열', `isUndefined: ${isUndefined('')} / isEmpty: ${isEmpty('')}`); console.log('null', `isUndefined: ${isUndefined(null)} / isEmpty: ${isEmpty(null)}`); console.log('undefined', `isUndefined: ..
- Total
- Today
- Yesterday
- Study
- JS
- 브라우저
- vue.js
- jQuery
- React
- 공부
- 타입스크립트
- 기초
- frontend
- 메서드
- 자바스크립트
- 프론트엔드
- 코딩애플
- TypeScript
- 뷰
- 프로젝트
- 차이
- 강의
- JavaScript
- 제로초
- 리액트
- css
- 아티클
- Method
- 통신
- html
- VUE
- Article
- 제이쿼리
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |