> 웹 프론트엔드 > JS 튜토리얼 > ES6 행동 : Let and Const

ES6 행동 : Let and Const

Lisa Kudrow
풀어 주다: 2025-02-15 10:12:11
원래의
902명이 탐색했습니다.

ES6 in Action: let and const es6

에서 let의 키 포인트 es6은 블록 스코핑 변수와 상수를 정의하고 JavaScript의 기능을 향상시키고 잠재적 오류를 줄이는 방법을 제공하는 두 가지 새로운 키워드 const 및 를 소개합니다. 키워드를 사용하면 특정 블록 범위 내에서 변수가 선언 될 수 있으며, 이는 기능 및 글로벌 범위로 제한되는 JavaScript의 이전 제한에서 중요한 변화입니다.

로 선언 된 변수는 들어오지 않으므로 블록 내에서 선언되기 전에 참조 할 수 없습니다.

키워드는 소환 될 수없는 상수를 정의하는 데 사용됩니다. let는 불변의 바인딩을 생성하지만 값 자체를 불변으로 만들지는 않습니다. 가치 불변성을 달성하려면 const를 사용해야합니다.

는 노드와 모든 최신 브라우저에서 지원됩니다. let 이 자습서는 let

인 ES6의 JavaScript에 추가 된 새로운 키워드 인 두 가지 키워드를 소개합니다. 블록 점수 변수와 상수를 정의하는 방법을 제공하여 JavaScript를 향상시킵니다.

이 기사는 ES6에 소개 된 새로운 JavaScript에 관한 많은 기사 중 하나이며, const 및 const, Object.freeze()let를 포함하여 , const 새로운 방법에 사용할 수 있습니다. 기능에 사용할 수있는 새로운 구문.

let const

ES5 이전에 JavaScript는 기능 범위와 글로벌 범위의 두 가지 스코프 만있었습니다. 이것은 C, C 또는 Java와 같은 다른 언어의 개발자에게 많은 좌절과 예기치 않은 행동을 가져옵니다. JavaScript에는 블록 범위가 부족하므로 변수는 정의하는 블록 내에서만 액세스 할 수 있습니다. 블록은 한 쌍의 곱슬 괄호 안에있는 모든 것입니다. 다음 예를 살펴 보겠습니다

이 코드를 실행 한 후에는 콘솔에 다음 출력이 표시됩니다. Map 위의 언어의 대부분의 개발자는 WeakMap 블록 외부에서 Set 변수가 액세스 할 수 없을 것으로 예상합니다. 예를 들어, C에서 동등한 코드를 실행하면 블록 외부에서 를 사용하는 것을 의미하는 " not dec WeakSet이 상황은 블록 범위의 가용성으로 ES6에서 변경됩니다. ECMA 조직 구성원은 키워드의 동작을 변경할 수 없다는 것을 알고 있습니다. 그래서 그들은 라는 새로운 키워드를 소개하기로 결정했습니다. 후자는 변수를 정의하는 데 사용될 수 있으며, 범위를 선언하는 블록으로 제한 할 수 있습니다. 더욱이

와 달리 var를 사용하여 선언 된 변수는 홍보되지 않습니다. 변수의 let 선언을 만나기 전에 블록에서 변수를 참조하면 가 발생합니다. 그러나 이것이 실제로 무엇을 의미합니까? 초보자에게만 좋은가요? 별말씀을요! var 왜 당신이 let를 좋아하는지 설명하려면 내 기사 "5 JavaScript 인터뷰 연습"에서 발췌 한 다음 코드를 고려하십시오 : let 여기에서는 변수 선언, 범위 및 이벤트 처리기와 관련된 잘 알려진 문제를 식별 할 수 있습니다. 내가 무슨 말을하는지 모른다면 돌아 오기 전에 언급 한 기사를 확인하십시오. ReferenceError es6 덕분에 loop에서 변수를 선언 하여이 문제를 쉽게 해결할 수 있습니다.

명령문은 노드와 모든 최신 브라우저에서 지원됩니다. 그러나 Internet Explorer 11에는 ES6 호환성 테이블에서 읽을 수있는 몇 가지 사항이 있습니다. let

function foo() {
  var par = 1;
  if (par >= 0) {
    var bar = 2;
    console.log(par); // 输出 1
    console.log(bar); // 输出 2
  }
  console.log(par); // 输出 1
  console.log(bar); // 输出 2
}
foo();
로그인 후 복사
로그인 후 복사
의 차이에 대한 실시간 데모는 아래에 나와 있으며, 이는 JSBIN에도 위치하고 있습니다.

<<>

for let <🎜 🎜> <<> 개발자는 값을 변경할 수 없도록 개발자가 니모닉을 주어진 값과 연관 시키 겠다는 ​​일반적인 요구를 해결합니다 (또는 더 간단하게 상수를 정의). 예를 들어, 수학 공식을 사용하는 경우 i 객체를 만들 수 있습니다. 이 객체에서는 π와 e의 값을 니모닉과 연결하려고합니다. 이 목표를 달성 할 수 있습니다. 그것을 사용하면 글로벌 또는 선언하는 함수의 로컬 변수가 될 수있는 상수를 만들 수 있습니다.

<code>1
2
1
2</code>
로그인 후 복사
로 정의 된 상수는 변수와 동일한 범위 규칙을 따르지만 개정 할 수는 없습니다. 상수는 또한

를 사용하여 선언 된 변수와 함께 속성을 공유합니다. 상수를 선언하기 전에 상수에 액세스하려고하면 let를 받게됩니다. 다른 값을

로 선언 한 변수에 다른 값을 할당하려고하면

를 받게됩니다. var 그러나 let는 불변성과 관련이 없습니다. Mathias Bynens가 자신의 블로그 게시물에서 ES2015에 불변성과 관련이 없다고 말했듯이,

는 불변의 구속력을 생성하지만 이것이 다음 코드에 표시된 것처럼 값이 불변이라는 것을 의미하지는 않습니다.

. 객체의 가치를 진정으로 불변으로 만들고 싶다면 <🎜 🎜>를 사용하십시오. const<🎜 🎜> <<<>의 브라우저 지원은

만큼 좋습니다. 진술은 노드와 모든 최신 브라우저에서 지원됩니다. 그러나 여기에는 Internet Explorer 11에도 주목할 사항이 있으며 ES6 호환성 테이블에서 관련 정보를 읽을 수 있습니다. const let의 샘플 사용량은 다음과 같습니다 const 다음은 JSBIN에도 위치한 이전 코드의 라이브 데모를 보여줍니다.

<🎜 🎜> <<> 결론

const 이 튜토리얼에서 에서, 나는 es6에 소개 된 변수를 선언하는 두 가지 새로운 방법 인

function foo() {
  var par = 1;
  if (par >= 0) {
    var bar = 2;
    console.log(par); // 输出 1
    console.log(bar); // 输出 2
  }
  console.log(par); // 输出 1
  console.log(bar); // 输出 2
}
foo();
로그인 후 복사
로그인 후 복사
를 소개했습니다. 는 곧 사라지지 않지만 코드 오류 가능성을 줄이기 위해 가능한 한

를 사용하는 것이 좋습니다. 추가로 읽기로서, 당신은 또한 우리의 빠른 팁으로 JavaScript에서 변수를 선언하는 방법을 좋아할 수도 있습니다.

faqs (faqs)에 대한 es6

javaScript es6에서

, letconst의 차이점은 무엇입니까? var JavaScript es6, const, let 및 는 변수를 선언하는 데 사용됩니다. 그들 사이의 주요 차이점은 범위와 재 할당입니다. 는 함수-스코핑이므로 선언하는 함수 내에서만 사용할 수 있습니다. 반면에

는 블록 스코핑되어 있으며, 그들이 선언하는 블록 내에서만 사용할 수 있습니다. 재 할당에 관해서는

로 선언 된 변수는 재 할당 할 수있는 반면 let로 선언 된 변수는 할 수 없습니다. 이로 인해 프로그램 전체에서 변경되지 않은 값에 가 매우 적합합니다. const 내 코드에서 언제

를 사용해야합니까?

루프의 카운터 또는 알고리즘의 값 스왑과 같이 시간이 지남에 따라 변경되는 변수를 선언 해야하는 경우 를 사용해야합니다. 구성 설정 또는 DOM 요소에 대한 참조와 같이 변경되지 않는 것으로 알려진 값이 있으면 를 사용해야합니다. var를 사용하면 코드가 더 쉽게 읽고 이해할 수 있습니다. 다른 개발자는 값이 변경되지 않아야한다는 것을 보여주기 때문입니다. let javaScript es6에서 const 변수를 재 할 수 있습니까?

아니요, JavaScript es6에서 변수를 재 할당 할 수 없습니다. 변수가 할당되면 재 할당하려고 시도하면 가 발생합니다. 그러나 변수가 객체 인 경우 객체 자체는 객체의 속성을 변경할 수 있습니다.

JavaScript es6에서 변수의 범위는 얼마입니까? var JavaScript es6에서 변수에는 블록 스코프가 있습니다. 이것은 정의하는 코드 블록 내에서만 액세스 할 수 있음을 의미합니다. 블록 외부에 액세스하려고하면 let를 받게됩니다. const 초기화없이 변수를 선언하면 어떻게됩니까?

초기화가 없으면 또는 let을 사용하여 변수를 선언하면 const가됩니다. 그러나 와 달리 선언하기 전에

또는 변수를 사용할 수 없습니다. 이렇게하면 가 발생합니다.

동일한 범위 내에서 또는 let를 사용하여 같은 이름으로 변수를 선언 할 수 있습니까? const 아니요, 동일한 범위 내에서 undefined 또는 var를 사용하여 동일한 이름의 변수를 선언 할 수 없습니다. 이렇게하면 가 발생합니다. 이것을 "Temporal Dead Zone"규칙이라고합니다. let 의 맥락에서 constReferenceError의 맥락에서, 프로모션은 무엇입니까?

고도는 JavaScript의 메커니즘으로 변수 및 함수 선언이 컴파일 단계에서 포함 된 범위의 상단으로 이동됩니다. 그러나 와 달리 및

선언은 초기화되지 않습니다. 그들은 승진되지만, 선언 전에 접근 할 수는 없습니다. 블록의 시작부터 선언이 처리 될 때까지 "임시 데드 존"에 있기 때문입니다. let 모든 브라우저에서 const

를 사용할 수 있습니까?

letconst는 ES6 (ES2015) 사양의 일부이며 모든 현대식 브라우저에서 지원됩니다. 그러나 ES6을 지원하지 않는 이전 브라우저의 경우 Babel과 같은 번역기를 사용하여 ES6 코드를 ES5 코드로 변환해야합니다. SyntaxError 및 사용의 성능 영향은 무엇입니까?

let 사용의 성능 영향은 무시할 수 있습니다. JavaScript 엔진은 이러한 키워드를 최적화하므로 키워드와 간에는 큰 성능 차이가 없습니다. const, 와

사이의 선택은 성능이 아닌 범위 규칙과 재 할당 동작을 기반으로해야합니다. var javaScript es6에서 let 및 const를 사용하기위한 모범 사례는 무엇입니까?

JavaScript es6에서 및 를 사용하기위한 몇 가지 모범 사례에는 기본적으로 let를 사용하는 것이 포함되며, 금액을 변경해야한다는 것을 알고있는 경우에만 포함됩니다. 이를 통해 코드를보다 예측 가능하고 이해하기 쉽게 만들 수 있습니다. 또한 항상 사용 가능한 위치를 명확히하기 위해 항상 범위의 맨 위에 변수를 선언하십시오. const

위 내용은 ES6 행동 : Let and Const의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿