배열은 const 로만 사용하는 이유가 뭔가요? push를 사용할 수 있는 이유는 또 뭐죠?

2025. 2. 2. 23:29_Web/JavaScript

728x90
배열은 const 로만 사용하는 이유가 뭔가요? push를 사용할 수 있는 이유는 또 뭐죠?

 

배열을 const로 선언하는 이유

자바스크립트에서 const로 선언한 배열은 배열 자체를 변경할 수는 없지만, 배열의 내용을 변경하는 것은 가능하기 때문이야.

1️⃣ const는 변수의 재할당을 막는다

javascript
코드 복사
const arr = [1, 2, 3]; arr = [4, 5, 6]; // ❌ TypeError: Assignment to constant variable.

배열 자체를 다른 배열로 바꾸는 것은 불가능해.


2️⃣ 배열 내부의 값은 변경할 수 있다

javascript
코드 복사
const arr = [1, 2, 3]; arr.push(4); // ✅ 가능 arr[0] = 10; // ✅ 가능 console.log(arr); // [10, 2, 3, 4]

✅ push(), pop(), splice() 같은 메서드를 사용하여 배열의 내용은 변경할 수 있어.
🚨 하지만 arr = ...처럼 변수 자체를 새로운 배열로 할당하는 것은 불가능해.


왜 const를 사용하는가?

  1. 불필요한 재할당을 방지하기 위해
    • let을 사용하면 실수로 배열을 통째로 바꿀 수 있음.
    • const를 쓰면 "이 변수는 배열 자체는 바뀌지 않는다"는 보장이 생김.
  2. 코드의 가독성과 유지보수성 향상
    • const를 사용하면, "이 변수는 오직 내부 값만 변경될 것이다"라는 의도를 전달할 수 있음.

🆚 그럼 let을 쓰면 안 되나요?

✅ let을 사용할 수도 있지만, 배열 자체를 재할당해야 하는 경우에만 필요해.

javascript
코드 복사
let arr = [1, 2, 3]; arr = [4, 5, 6]; // ✅ 가능 (배열 자체 변경)

이처럼 배열을 통째로 바꿀 가능성이 있다면 let을 사용하고,
배열의 내용을 변경하는 것만 필요하다면 const를 사용하는 것이 일반적이야! 🚀

 

 

 

이 글은 AI로 작성된 실험적인 글입니다.