ES6 이전에는 var 키워드가 변수 선언하는 유일한 방법이었다.
ES6 let과 const 키워드를 지원한다.
const
상수를 선언하는 키워드이다.
상수는 값을 변경할 수 없다.
const max = 100
해당 값을 변경하려고 하면 아래의 에러가 발생한다.
Uncaught TypeError: Assignment to constant variable.
상수값은 변경할 수 없다.
let
구문적인 변수 영역 규칙을 지원한다.
{}를 사용해 코드 블록을 만든다.
함수의 경우 코드 블록이 별도의 변수 영역을 이룬다.
if/else, for 블록은 별도의 영역을 구성하지 않는다.. (다른 언어랑 다름)
var 변수로 선언시
var subject = "javascript"
if( subject ) {
var subject = "react"
console.log( '블록' , subject )
}
console.log( '글로벌' , subject )
결과 )
블록 react
글로벌 react
let 변수로 선언시
global영역에 있는 subject 변수의 값을 변경하지 않는다.
var subject = "javascript"
if( subject ) {
let subject = "react"
console.log( '블록' , subject )
}
console.log( '글로벌' , subject )
결과 )
블록 react
글로벌 javascript
'프로그래밍 > ES6' 카테고리의 다른 글
ES6 - 브라우저에서 바벨(babel)을 통한 트랜스파일링 (0) | 2019.06.26 |
---|---|
ES6 - function this vs 화살표 함수(=>)의 this 차이점 (0) | 2019.06.26 |
ES6 - 화살표로 함수 만들기 => , function 키워드 없이 함수 만들기 (0) | 2019.06.26 |
ES6 - 함수 파라미터 기본값(디폴트값) 적용하기 (0) | 2019.06.26 |
ES6 - 템플릿 문자열 사용하기 ` (0) | 2019.06.26 |