본문 바로가기
웹코딩 배우기/· JavaScript

자바스크립트 const의 기본

by 닐기 2021. 11. 12.

See the Pen 자바스크립트 const by nilgi (@nilgi) on CodePen.

 

 

const a = 24
a = 12 // 오류
a = a + 12 //오류

▲ const 재설정, 재할당할 수 없다.

 

 

<p id="const1"></p>
<script>
const name = ["cpu", "case", "video card"];
name[2] = "ram";
name.push("mouse");
document.getElementById("const1").innerHTML = name; 
</script>

▲ const 사용
새 Array(정렬, 배열), Object(개체), Function(기능), RegExp(정규 표현)
const는 상수의 값, 배열, 개체를 재할당할 수 없지만 상수 배열의 요소, 객체의 속성(값)은 변경할 수 있다.

 

 

const name = ["cpu", "case", "video card"];
name = ["power", "case", "ssd"]; // 재할당 X

 

<p id="const2"></p>
<script>
const nilgi = {bloodtype:"AB", weight:"68kg", gender:"mail"}; // 개체
nilgi.color = "#333333"; // 값 바꾸기:
nilgi.blog = "nilgi.tistory.com"; // 값 더하기:
document.getElementById("const2").innerHTML = "내 블로그 주소는 " + nilgi.blog; 
</script>

 

▲ const의 개체를 변경할 수 있다.

 

 

const nilgi = {bloodtype:"AB", weight:"68kg", gender:"mail"};
nilgi = {bloodtype:"AB RH+", weight:"168kg", gender:"femail"}; // 개체 재할당 불가능.

 

var n = 7;     // 적용
const n = 7;   // 비적용
{
let n = 7;     // 적용
const n = 7;   // 비적용
}
{
const n = 7;   // 적용
const n = 7;   // 비적용
}

 

▲ const {블록}은 let의 {블록]과 거의 비슷하다. 동일 선상 기존 let. var 값을 const로 재선언할 수 없다.

 

 

const n = 7;     // 적용
n = 7;           // 비적용
var n = 7;       // 비적용
let n = 7;       // 비적용
const n = 7;     // 비적용
{
  const n = 7;   // 적용
  n = 7;         // 비적용
  var n = 7;     // 비적용
  let n = 7;     // 비적용
  const n = 7;   // 비적용
}

 

▲ 동일 선상 기존 const 값을 새 const 값을 재할당할 수 없다.

 

 

const n = 7;       // 적용
{
  const n = 8;   // 적용
}
{
  const n = 9;   // 적용
}

 

▲ 다른 범위에는 재설정할 수 있다.

 

'재할당, 재설정, 재선언'은 같은 의미며 다양하게 써보는 게 도움이 된다. 공부하다 보니 같은 의미도 다르게 많이 사용한다. 나도 똑같이 써야 다른 사람의 것을 이해할 수 있다. 헷갈리지만 처음 듣는 것보다는 이해하기 쉽다.