>  기사  >  웹 프론트엔드  >  es6에서 let과 const의 차이점은 무엇입니까?

es6에서 let과 const의 차이점은 무엇입니까?

青灯夜游
青灯夜游원래의
2022-04-19 16:28:565062검색

차이점: 1. let은 값과 유형을 변경할 수 있는 변수를 선언하는 반면 const는 변경하거나 재할당할 수 없는 상수를 선언합니다. 2. let 변수는 선언 후 초기화할 필요가 없지만 const 상수는 한 번만 사용합니다. 선언되면 즉시 초기화되어야 합니다. 3. const는 항상 고정된 주소를 가리키는 반면, let은 고정되지 않습니다.

es6에서 let과 const의 차이점은 무엇입니까?

이 튜토리얼의 운영 환경: Windows 7 시스템, ECMAScript 버전 6, Dell G3 컴퓨터.

let과 const는 변수를 선언하기 위해 es6에 도입된 두 가지 새로운 키워드입니다. 널리 알려진 var 변수를 계속 사용할 수 있지만 이제는 사용할 수 있는 두 가지 더 강력한 도구인 let과 const가 있습니다.

es6에서 let과 const의 차이점

① Let은 변수를 선언하고 해당 값과 유형을 변경할 수 있습니다. const는 상수를 선언하며 값이나 유형을 변경할 수 없습니다.

② Let 변수는 선언한 후 초기화할 필요가 없는 반면, const 상수는 한 번 선언하면 즉시 초기화해야 하며 나중에 값을 할당할 수 없습니다.

const i ; // 报错,一旦声明,就必须立即初始化
const j = 5;
j = 10; // 报错,常量不可以改变

3 const는 항상 고정된 주소를 가리키고, let은 고정되지 않습니다.

const foo = {};
 
// 为 foo 添加一个属性,可以成功
foo.prop = 123;
foo.prop // 123
 
// 将 foo 指向另一个对象,就会报错
foo = {}; // TypeError: "foo" is read-only

위 코드에서 상수 foo는 주소를 저장하고 이 주소는 객체를 가리킵니다. 변경할 수 없는 유일한 것은 이 주소입니다. 즉, foo가 다른 주소를 가리킬 수는 없지만 개체 자체는 변경 가능하므로 여전히 새 속성을 추가할 수 있습니다.

설명:

배열, 객체 등 복합형 변수의 경우 변수 이름은 데이터를 가리키는 것이 아니라 데이터가 위치한 주소를 가리킵니다. const는 변수 이름이 가리키는 주소가 변경되지 않는다는 것을 보장할 뿐, 해당 주소의 데이터가 변경되지 않는다는 것을 보장하지 않으므로 복합 유형 변수를 상수로 선언할 때는 매우 주의해야 합니다.

const arr = [];
// 报错,[1,2,3]与[]不是同一个地址
arr = [1,2,3];
const arr = [];
// 不报错,变量名arr指向的地址不变,只是数据改变
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
console.log(arr.length); // 输出:3

es6에서 let과 const의 유사점:

① 선언이 있는 블록 수준 범위 내에서만 유효합니다.

② 선언 승격은 없으며, 선언 직위 이후에만 사용할 수 있는 임시 데드존이 있습니다.

<script type="text/javascript">
console.log(dadi);
let dadi = 569;
</script>

결과: 오류가 보고됩니다

es6에서 let과 const의 차이점은 무엇입니까?

3 반복할 수 없습니다.

【관련 추천: javascript 비디오 튜토리얼, web front-end

위 내용은 es6에서 let과 const의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.