var va let va const var 함수 스코프 함수 스코프의 최상단으로 호이스팅 선언 후 할당없이 호출하면 undefined (선언과 동시에 undefined로 초기화되기 때문) strict mode가 아닐때, 글로벌 스코프에서 선언 시 글로벌 객체에 바인딩 재선언 가능 재할당 가능 let 블록 스코프 블록 스코프의 최상단으로 호이스팅 선언 후 할당없이 호출하면 ReferenceError (이것을 TDZ(Temporal Dead Zone)이라함, 선언은 했지만 참고할 수 없는 사각지대) strict mode가 아닐때, 글로벌 스코프에서 선언해도 글로벌 객체에 바인딩되지 않음 재선언 불가능 재할당 가능 const 블록 스코프 블록 스코프의 최상단으로 호이스팅 선언 후 할당없이 호출하면 Refere..
let, const와 블록 레벨 스코프 ES6부터 let, const를 사용하게 되는데, var와는 여러가지 차이가 있다. 선언은 프로그래밍에서 필수기때문에 var와 let, const차이를 이해하고 넘어가지 않으면 많은 프로그래밍적 오류를 발생시킬수 있다. 변수 호이스팅 단계 선언단계(Declaration phase) 변수를 실행시키는 실행 컨텍스트의 변수 객체에 등록, 이 객체는 스코프가 참조하는 대상이됨 초기화단계(Initialization phase) 변수 객체에 등록된 변수를 위한 공간을 메모리에 확보 - 변수는 undefined로 초기화됨 할당 단계(Assignment phase) undefined로 초기화 된 변수에 실제 값 할당 var var 생략 시 전역변수로 선언 의도하지 않게 선언된 ..
호이스팅(Hoisting) 클로저같은 문법들의 효용성을 이해하기위해서 자바스크립트가 가졌던 특징입니다. var나 let, const로 정의된 변수나 함수선언문, 함수표현식이 유효범위의 최상단으로 끌어올려지는 것처럼 보여지는현상을 말합니다. 최상단으로 끌어올려지는 것처럼이라고 설명한 이유는 가상의 개념으로 설명하는 것이 좀 더 이해의 측면에 유리하기 때문입니다. 정확히 말하면 실행 컨텍스트가 활성화 되었을때 해당 영역에서 변수의 이름을 메모리에 먼저 수집하는 현상으로 인해 발생하는 현상입니다. 즉, 가상의 개념에서는 이해를 돕기위해 호이스팅을 '최상단으로 끌어올려진다'라고 말하지만 코드의 위치는 변하지 않습니다. 간단히 말하면, '유효범위의 코드가 실행되기 전 메모리에 먼저 저장했던 선언문을 사용할 수 있..
let, const 키워드 let 키워드, const 키워드를 알아보기 전에 var 키워드를 알아보자. [var 키워드] var 키워드는 변수를 선언할 때 사용하며 변수는 스코프(scope)로 구분한다.크게 로컬 변수(Local variable), 글로벌 변수(Global variable)로 나뉜다. 로컬 변수(Local variable) - 함수, 오브젝트 글로벌 변수(Global variable) - 프로그램 전체 ES5에서 vat 키워드를 사용하여 변수를 선언하도록 하기 위해 'use strict'를 도입했다.'use strict'를 사용하면 var 없이 선언 시에 에러가 발생한다. 하지만 근본적으로 var의 문제를 해결하지 못한다.그래서 var 키워드의 문제점을 해결하기 위해 나온 것이 let 키..
- Total
- Today
- Yesterday
- 뷰
- 제로초
- html
- jQuery
- 프론트엔드
- 메서드
- Article
- VUE
- 브라우저
- TypeScript
- 아티클
- vue.js
- 프로젝트
- 자바스크립트
- React
- css
- Study
- 차이
- 제이쿼리
- Method
- 타입스크립트
- 강의
- 기초
- JS
- 통신
- 코딩애플
- JavaScript
- frontend
- 리액트
- 공부
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |