Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
Tags
- SQL
- 싸피셜
- PWA
- 플로이드워셜
- db
- 머신러닝종류
- queryset
- SSAFY
- react
- 백준
- VITE
- sqld
- Javascript
- Python
- vitepwa
- Django
- TypeScript
- 데코레이터
- SSAFYcial
- 리액트
- 셀프넘버
- 알고리즘
- js
- pwa적용하기
- 14658
- QuerySetAPI
- unionfind
- git
- 싸피10기
- 싸피
Archives
- Today
- Total
Meme's IT
[JS] JavaScipt의 변수 본문
# 변수명 작성 규칙
- 반드시 문자, 달러($), 밑줄(_)로 시작
- 대소문자 구문
- 예약어(for, if, function) 사용 불가
- 카멜 케이스(camelCase): 변수, 객체, 함수
- 파스칼 케이스(PascalCase): 클래스, 생성자
- 대문자 스네이크 케이스(SNAKE_CASE): 상수
# 변수 선언 키워드
1. let
- 블록 스코프(block scope)를 갖는 지역 변수를 선언
- 재할당 가능
- 재선언 불가능
- 초기값 없이 선언 가능
let number = 10
number = 20 // 재할당 가능
let num = 10
let num = 20 // 재선언은 불가능
2. const
- 블록 스코프를 갖는 지역변수를 선언
- 재할당, 재선언 둘 다 불가능
- 초기값 반드시 필요
const number= 10
number = 20 // 재할당 불가능
const num = 10
const num = 20 // 재선언 불가능
const cnt // 초기값 없이 안됨
※ 블록 스코프(block scope)란?
그럼 어떤 변수를 써야하나요?
→ 기본적으로는 const 사용 (재할당, 재선언이 있는 코드는 좋은 코드가 아님)
재할당이 필요할 때에만 let 사용
3. var
- 옛날에 쓰던 키워드
- 재할당, 재선언 모두 가능
- 호이스팅 현상으로 인해 쓰지 않는 것 추천
더보기
# 호이스팅이란?
변수를 선언 이전에 참조할 수 있는 현상
변수 선언 이전에 위치에서 호출시 undefined → 유지보수가 어려움
console.log(name) // undefined → 선언 이전에 참조
var name = '용복' // 이제 선언
- 함수 스코프를 가짐(함수 내부 외부만 다르고, 반복문 등은 그냥 다같이 씀)
더보기
# 함수 스코프
함수의 중괄호 내부를 가리킴
function foo() {
var x = 1
console.log(x) // 1
}
console.log(x) // ReferenceError
- 만약에 변수 선언 키워드를 안쓰면 자동으로 var가 붙음
'FrontEnd > JavaScript' 카테고리의 다른 글
[JS] 조건문과 반복문 (0) | 2023.10.24 |
---|---|
[JS] 연산자 (0) | 2023.10.24 |
[JS] 데이터 타입 (0) | 2023.10.24 |
[JS] JavaScript와 DOM (0) | 2023.10.23 |
[JS] JavaScript 개요 (0) | 2023.10.23 |