인프런 커뮤니티 질문&답변

boutime2017님의 프로필 이미지
boutime2017

작성한 질문수

자바스크립트 중고급: 엔진 핵심

6. Lexical Environment, var 키워드 문제와 해결, 동적 환경

var키워드 질문입니다

작성

·

187

1

정말 초보적인 질문이라 죄송합니다만...

var키워드를 사용하지 않고 변수를 선언할 수 있는 방법이 있나요?

'함수에서 var키워드를 사용하지 않고 변수를 선언하면 전역 객체에 설정됨'이라고 설명해주셨는데, 변수를 선언하려면 var, const, let이 세 가지 키워드 중 하나는 반드시 써야 하지 않나요?

const와 let이 ES6문법임을 제외하면 변수를 선언할 때는 반드시 var키워드를 쓸 수 밖에 없는 것 아닌가요?

답변 2

2

김영보님의 프로필 이미지
김영보
지식공유자

var 키워드를 사용하지 않고 변수를 선언할 수 있습니다. 아래 코드는 정상으로 실행됩니다. 그런데 이것은 문제가 될 소지가 있습니다. 그래서 "use strict"에서는 var 키워드를 작성하지 않으면 에러가 발생합니다. const, let도 이런 문제를 보완하기 위한 측면도 있습니다.

book = 123;
function value(){
  console.log(book)
};
value();

0

boutime2017님의 프로필 이미지
boutime2017
질문자

변수 선언이 키워드 없이도 이루어질 수 있다는 걸 전혀 몰랐습니다;;

답변 감사드립니다!

boutime2017님의 프로필 이미지
boutime2017

작성한 질문수

질문하기