자바스크립트 변수 선언에 사용되는 키워드

자바스크립트는 동적인 타입을 가지는 언어로, 변수를 선언할 때 타입을 명시적으로 지정하지 않습니다. 그러나 변수를 선언할 때 사용되는 몇 가지 키워드가 있습니다. 이 키워드들은 변수의 범위 및 동작을 제어하는 데 사용됩니다.

1. var (함수 스코프)

var 키워드는 가장 오래된 변수 선언 키워드입니다. 이 키워드는 함수 스코프를 가지며, 함수 내에서 선언된 변수는 함수 외부에서 접근할 수 없습니다. 또한 동일한 이름의 var 변수를 여러 번 선언해도 에러가 발생하지 않고, 마지막에 선언한 값으로 덮어씌워집니다.

function example() {
    var x = 10;
    if (true) {
        var x = 20;
        console.log(x); // 출력: 20
    }
    console.log(x); // 출력: 20
}

2. let (블록 스코프)

ES6 (ECMAScript 2015)에서 let 키워드가 도입되었습니다. let은 블록 스코프를 가지며, 블록 내에서 선언된 변수는 블록 외부에서 접근할 수 없습니다. let을 사용하면 변수의 범위를 명확하게 할 수 있습니다. 또한 동일한 이름의 let 변수를 같은 블록 안에서 중복해서 선언하면 문법적으로 에러가 발생합니다.

function example() {
    let x = 10;
    if (true) {
        let x = 20;
        console.log(x); // 출력: 20
    }
    console.log(x); // 출력: 10
}

3. const (상수)

const 키워드는 상수를 선언하는 데 사용됩니다. 상수는 값을 한 번 할당하면 변경할 수 없습니다. const 변수는 블록 스코프를 가지며, let과 동일하게 동일한 이름의 const 변수를 같은 블록 안에서 중복해서 선언하면 문법적으로 에러가 발생합니다.

function example() {
    const x = 10;
    if (true) {
        const x = 20;
        console.log(x); // 출력: 20
    }
    console.log(x); // 출력: 10
}

결론

자바스크립트 변수 선언에는 var, let, const 세 가지 키워드를 사용할 수 있습니다. var는 오래된 함수 스코프를 가지며, letconst는 블록 스코프를 가지고 있습니다. 변수의 범위와 변경 가능성을 고려하여 적절한 키워드를 선택하여 사용하세요.