더북(TheBook)

예를 들어, 하나의 프로젝트에서 A 개발자가 모든 숫자의 합을 저장하기 위해 sum이라는 변수명을 사용했습니다. 그런데 B 개발자가 이 사실을 모르고 sum이라는 변수를 다시 선언하고 재할당합니다. 그러면 A 개발자 입장에서는 자신이 사용하던 변수명 sum이 의도치 않게 다른 용도로 변경됐지만, 자바스크립트 문법에서는 오류가 아니므로 아무런 경고도 발생하지 않습니다. A 개발자로서는 생각만 해도 끔찍하겠죠?

let 키워드는 변수명을 중복 선언하지 못하게 해서 다음과 같은 코드가 정상적으로 실행되지 않습니다.

let num = 10 + 20;
let num = 50;

실행결과

Uncaught SyntaxError: Identifier 'num' has already been declared

코드를 실행하면 num 식별자가 이미 선언됐다는 오류 메시지가 발생합니다. 이렇게 키워드 자체에서 중복 선언을 불가능하게 함으로써 다른 사람이 선언한 변수명을 실수로 재선언하는 경우가 없어졌습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.