변수는 프로그래밍의 기본 구성 요소이며 데이터 컨테이너 역할을 합니다. JavaScript는 var
, let
, const
의 세 가지 변수 선언 방법을 제공합니다. 비슷해 보이지만 목적과 동작이 다릅니다. 이 문서에서는 차이점을 살펴보고 적절한 사용법을 명확히 하기 위한 실제 예를 제공합니다.
자바스크립트 변수의 진화
ES6(ECMAScript 2015) 이전에는 var
가 변수 선언을 위한 유일한 방법이었습니다. 그러나 함수 범위와 호이스팅 동작으로 인해 예상치 못한 버그가 발생하는 경우가 많았습니다. ES6에서는 let
및 const
을 도입하여 개발자가 변수 동작을 보다 세밀하게 제어할 수 있도록 하여 더 깔끔하고 오류가 발생할 가능성이 적은 코드를 만들었습니다.
1. var
: 유산 선언
var
은 JavaScript의 원래 변수 선언입니다. 함수 범위이므로 접근성이 정의된 함수로 제한됩니다. 결정적으로 블록 범위가 부족하여 루프나 조건문 내에서 문제를 일으킬 가능성이 있습니다.
주요 var
특성:
<code class="language-javascript">function example() { var message = "Hello, world!"; console.log(message); // Accessible here } // console.log(message); // ReferenceError: message is not defined</code>
var
변수는 해당 범위의 최상위로 호이스팅되지만 undefined
.<code class="language-javascript">console.log(name); // undefined var name = "John";</code>
<code class="language-javascript">var age = 25; var age = 30; // No error console.log(age); // 30</code>
사용 시기 var
: 일반적으로 최신 JavaScript에서는 피합니다. let
및 const
은 범위 지정 및 호이스팅 관련 문제를 방지하는 데 선호됩니다.
2. let
: 유연한 현대적 접근 방식
ES6에서는 블록 범위 변수 선언으로 let
를 도입했습니다. var
과 유사하지만 많은 함정을 피합니다.
주요 let
특성:
<code class="language-javascript">if (true) { let greeting = "Hi!"; console.log(greeting); // Accessible here } // console.log(greeting); // ReferenceError: greeting is not defined</code>
var
과 달리 let
는 선언 전에 액세스를 방지합니다.<code class="language-javascript">console.log(color); // ReferenceError: Cannot access 'color' before initialization let color = "blue";</code>
<code class="language-javascript">let score = 10; // let score = 20; // SyntaxError: Identifier 'score' has already been declared</code>
사용 시기 let
: 특정 블록 내에서 또는 시간이 지남에 따라 값이 변경될 수 있는 변수에 사용합니다.
3. const
: 불변 상수
또한 ES6에 도입된 const
은 재할당되어서는 안 되는 변수를 위해 설계되었습니다. let
처럼 블록 범위이고 호이스트되지 않습니다.
주요 const
특성:
let
<code class="language-javascript">function example() { var message = "Hello, world!"; console.log(message); // Accessible here } // console.log(message); // ReferenceError: message is not defined</code>초기 할당 후에는 값을 변경할 수 없습니다.
<code class="language-javascript">console.log(name); // undefined var name = "John";</code>
const
<code class="language-javascript">var age = 25; var age = 30; // No error console.log(age); // 30</code>
const
호의
는 불변성을 나타냅니다. 필요한 경우 사용 : 재 할당이 필요한 변수에 대한 예약
피하십시오Feature | var |
let |
const |
---|---|---|---|
Scope | Function | Block | Block |
Hoisting | Yes (undefined) | No | No |
Re-declaration | Yes | No | No |
Re-assignment | Yes | Yes | No |
및 는 우수한 기능을 제공합니다
결론const
를 사용하면 코드 품질과 가독성이 크게 향상됩니다. 위 내용은 JavaScript의 변수 이해: Let, Const 및 Var 설명.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!