몽땅뚝딱 개발자

[Javascript/ES6+] 변수의 구분 본문

Development/Javascript

[Javascript/ES6+] 변수의 구분

레오나르도 다빈츠 2021. 7. 7. 21:07

출처

 

자바스크립트 ES6+ 기본 - 인프런 | 강의

4개 강좌로 구성된 자바스크립트 바이블 강좌의 3번째 강좌입니다. 자바스크립트 스펙의 95% 이상을 다룹니다. ES6+ 환경에서 새로운 패러다임의 프로그램을 개발할 수 있습니다., 자바스크립트

www.inflearn.com

 


 

🚀 변수 구분

 

◽ 구분하는이유

기능과 목적이 다르기 때문이다.

 

1) 로컬 변수(=지역변수)

- 함수안에 작성하는 것으로 변수 공유를 하지 않는다.

- 빠르게 식별자를 해결하기 위해 가까운 스코프의 변수를 사용하는 것이다.

 

2) 글로벌 변수(=전역변수)

- 다른 JS파일에서 변수값을 공유할 수 있다.

- depth에 관계없이 파일에서 공통 변수 개념으로 사용이 가능하다.

- 의도는 좋으나 처리속도가 떨어진다.



◽ var 키워드의 문제

글로벌 변수는 글로벌 오브젝트의 로컬변수로, var value = 100처럼 var 키워드를 사용하는 것이 정상적이다.

하지만 var 키워드를 작성하지않으면 글로벌 변수로 간주하는데서 문제가 된다.



 use strict의 사용

함수 안에서 var 키워드를 사용하지않으면 에러가 발생한다.

그래서 ES5에서는 이렇게 사용하기위해 "use strict"를 붙여서 사용해주었다.

ES6+에서는 전체는 아니지만 대부분이 "use strict"가 디폴트 환경이 되었다.

"use strict":
function point() {
    try {
        value = 300;
    } catch(e) {
console.log("글로벌 변수 사용 불가");
    };
};
point();

 

 

Comments