세모이
개발 계발
세모이
전체 방문자
오늘
어제
  • 분류 전체보기 (83)
    • 알고리즘 (1)
    • 자바스크립트 (29)
    • 리액트 (10)
    • HTML&CSS (2)
    • TIL (26)
    • 파이썬 (8)
    • Dev (1)
    • 데일리 (3)
      • 2023 (3)
    • 에러일기 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 개발자 도구 Network
  • 자바스크립트 strict mode
  • 자바스크립트 함수와 일급 객체
  • 시멘틱 태그
  • 자바스크립트 전역 변수의 문제점
  • 자바스크립트 생성자 함수에 의한 객체 생성
  • 자바스크립트 프로퍼티 어트리뷰트
  • 함수
  • 리액트 key
  • 자바스크립트 프로토타입
  • 옵셔널 체이닝
  • 모던 자바스크립트 deep dive
  • &&연산자
  • const let 키워드와 블록레벨 스코프
  • 모던 자바스크립트
  • html 신기한 태그
  • 모던 자바스크립트 deep deive
  • 자바스크립트 깊은 복사 얕은 복사
  • 자바스크립트
  • 자바스크립트 빌트인 객체

최근 댓글

최근 글

티스토리

반응형
hELLO · Designed By 정상우.
세모이

개발 계발

[자바스크립트] 자바스크립트 변수 선언 방법
TIL

[자바스크립트] 자바스크립트 변수 선언 방법

2022. 3. 13. 20:56
반응형



자바스크립트의 변수 선언 방법

과거에는 var를 사용하는 것밖에 없었지만 이제는 const, let, var 같이 여러가지가 있으며 사용 방법도 다르다.


var one = 1;

console.log(prev); // undefined -> 자바스크립트 호이스팅 특성

function change() {
  console.log(one);

  let two = 2;
  const three = 3;

  console.log(two);
  console.log(three);

  one = 11;
  two = 22;
  // three=33;  Uncaught TypeError: Assignment to constant variable.
}
var prev = 3;
change();

console.log(one); // 11

var one = '일입니다';

console.log(one); // 일입니다

// console.log(two); //two is not defined at

const three = 33;

console.log(three); //33

별 다른 이유가 없다면 const를 쓰는 것이 좋다.

why? 변수에 값을 할당하는 것은 정보를 선언하는 것 뿐만 아니라 무엇을 정보로 할지에 대한 신호를 보내는 것(한번 할당하고 변경하지 않는다면 해당 변수의 변경에 대해 신경을 크게 쓰지 않아도 됨)


✅ const

  • 블록 유효 범위(block scope) 기준
  • 블록의 문맥 내에서 재할당할 수 없는 변수 선언.
  • 재할당할 수 는 없지만 값을 바꿀수는 있다.(객체, 배열)

블록 유효 범위 변수 선언 - 변수는 블록 내에서만 접근 가능


✅ let

  • 블록 유효 범위(block scope) 기준
  • 같은 이름의 변수를 다시 선언할 수 없다.
  • 재할당이 필요한 경우는 const 보다 let을 권장

✅ var

  • 어휘적 유효 범위(lexical scope) 기준
  • 같은 이름의 변수를 다시 선언할 수 있다.

어휘적 유효 범위 - 함수 내부 어디서든 접근 가능


✅ 추가 사항

  • var로 할 수 있는 것은 대부분 let으로 대체 할 수 있으므로 var 사용을 지양.
  • 호이스팅 - 함수 안에 있는 선언들을 모두 끌어올려서 해당 함수 유효 범위의 최상단에 선언하는 것
반응형

'TIL' 카테고리의 다른 글

WebRTC ver.1  (0) 2022.03.14
[자바스크립트] 변수  (0) 2022.03.14
git rebase  (0) 2022.02.19
첫 팀프로젝트 후기  (0) 2022.02.16
자바스크립트 함수  (0) 2022.02.13
    'TIL' 카테고리의 다른 글
    • WebRTC ver.1
    • [자바스크립트] 변수
    • git rebase
    • 첫 팀프로젝트 후기
    세모이
    세모이
    개발 공부!

    티스토리툴바