[JavaScript]

2. 변수

cr.kl_ 2024. 7. 5. 16:32

변수?

변할 수 있는 수/정보

 

  • 변수는 선언, 할당, 사용 가능 하고 '변할 수 있는 수' 이므로 재할당 가능
  • BUT! const는 상수로 한번 할당한 값을 바꿀 수 없어 변수 이름당 한번만 사용 가능
  • var은 초기화 필요 없이 계속 재할당 가능
  • let, const 블록레벨선언으로 코드 블록 밖에서 접근 불가, 재정의 불가 (const는 초기화 해야 재정의 가능)
  • 즉, var은 var a = 10;을 선언했어도 var a = 20;으로 바로 값을 바꿀 수가 있는데 그 과정중 var 변수가 필요 없다.
  • 하지만 let은 let이라는 블록이 있어야 할당 가능, const는 값을 아예 바꿀 수가 없으므로 이름을 새로 짓던지 아예 초기화 후 다시 할당 해야한다.
  • +
  • let name = '홍길동', name = '김세찌' ➡️ 로 변수의 이름을 통해 새로 재할당은 가능 하나
  • let name = '김세찌' ➡️ 로 아예 같은 이름의 변수로 새 선언은 불가능 하다
  • const name = '홍길동', name = '김세찌' ➡️ 로 변수의 이름을 통해서도 재할당 불가능
  • {} 블록 안에서 할당을 하면 블록 안에서만 사용가능
  • {}안의 {}에서도 그곳에서만 사용 가능 바깥의 {}에선 사용 불가
  • {}의 변수는 자식{}에서도 사용 가능
  • 하지만 부모{}의 변수를 자식{}에서 재선언 가

 

변수 이름을 정할때

  • $, _, 문자 를 제외한 특수문자들 사용 불가능
  • 첫 글자 숫자 X
  • 대소문자 구별
  • 예약어(자바스크립트에서 미리 찜한 단어) 사용 불가 [if, for, let....]

⚠️블록 스코프/block scope

  • 여러 줄의 코드를 하나로 묶어주는 단위인 블록이 존재 ( { } )
  • 이러한 블록 안에서만유효한 코드 범위 의미
  • 집이라고 생각하자

⚠️ 호이스팅

  • var, 함수로 선언한 것들만
  • 브라우저에서 선언을 최상단으로 끌어 올려지는 현상
  • 함수를 아래쪽에서 선언해도 위쪽에서 불러올 수 있다.
  • let은 X

⚠️ strict mode

  • 자바스크립트는 유연해 변수로 선언을 안하더라도 선언이 된다.
  • 그것을 방지하기 위해 상단에 'strict mode';를 선언하게 되면 그를 방지할 수 있다.

'[JavaScript]' 카테고리의 다른 글

4. 조건문과 반복  (0) 2024.07.05
3. 함수  (0) 2024.07.05
1. 자바스크립트 기본  (0) 2024.07.05
실습으로 배우는 자바스크립트 기초  (0) 2024.07.04
JavaScript 쌩 기초  (0) 2024.07.04