👋 const 변수
1) const 문법
- 구문:
name1 [= value1] [, name2 [= value2]] - 값을 바꿀 수 없는 변수 선언(예외로 배열이나, 객체면 값을 바꿀 수 있음)
-
name1에 변수 이름 작성, 식별자로 사용const sports = '축구'; try { sports = '농구'; } catch (e) { console.log('const 할당 불가'); }const sports = "축구";sports를const로 선언하고 값 할당try { sports = "농구;try 블록도 별도의 스코프이지만 const, let을 작성하지 않았으므로- sports 변수에 값을 할당하게 됨 이때
sports가const변수 이므로 에러 발생
2) JS에서 상수는 대문자 사용이 관례
```tsx
const bonus = 100;
const POINT = 200;
```const가상수이지만 값 형태에 따라 바꿀 수 있음const POINT=- 200;대문자 사용이 코딩 관례이므로 괜찮음- 우선
let이 아닌const사용 가능을 검토(우선순위const>let>var)
3) const 변수 사용
-
const변수 전체를 바꿀 수 없지만,Object의 프로퍼티 값을 바꿀수 있음const book = { title: '책' }; try { book = { title: '음악 책' }; } catch (e) { console.log('const 전체 할당 불가'); } book.title = '미술 책'; console.log(book.title); // const 전체 할당 불가 // 미술 책book = {title: "음악 책"};book에 값을 할당하면 에러 발생,book전체를 바꿀 수 없음book.title = "미술 책";프로퍼티 값은 변경할 수 있음const변수의 변경 불가는book에 값을 할당하는 것을 뜻 함
-
배열의 엘리먼트 값도 바꿀 수 있음const book = ["책"]; try { book = ["음악 책"]; } catch(e) { console.log("const 전체 할당 불가"); } book[0] = "미술 책"; console.log(book[0]); // const 전체 할당 불가 // 미술 책book = ["음악 책"];book에 값을 할당하면 에러 발생book[0] = "미술 책";엘리먼트 값은 변경할 수 있음