JavaScript 변수

Wooooo·2022년 1월 18일
0

변수 var let const (선언 / 할당 / 재할당 / 범위)

  1. 선언
  • var 변수명 = 값;
  • let 변수명 = 값;
  • const 변수명 = 값;
  1. 재선언
  • var : 재선언 가능
  • let, const : 재선언이 불가능
  1. 재할당
  • var, let : 재할당 가능
  • const : 재할당 불가능 ( Array 또는 Object로 선언 시 요소 추가 삭제등은 가능 )
    var a = 20;
    let b = 10;
    const c = 30;
    a = 10;
    b = 20;
    // c = 40; // error 
    // const : 재할당 불가능
    
    const obj = {
      name: "kim",
      age: 50,
    };
    // const : Array 또는 Object로 선언 시 요소 추가 삭제등은 가능
    obj.name = "jang"; // 변경
    obj.address = "서울"; // 추가
    console.log(obj);
    // return : {name: 'jang', age: 27, address: '서울'}
    
    Object.freeze(obj); // object 객체의 요소의 값 변화 불가 선언
    obj.name = "lee";
    console.log(obj);
    // return : {name: 'jang', age: 27, address: '서울'}
  1. 범위
  • var : 함수 딘위
  • let, const : 블록 단위 {} 안에서 선언하면 {}안에서만 사용 가능
    function fnc1() {
      if (true) {
        var a = "kim";
        let b = "jang";
        let c = "lee";
        //   var : 함수 딘위
        // let, const : 블록 단위
      }
      console.log(a);
      // console.log(b); error
      // console.log(c); error
    }
    
    //  console.log(a); error
    fnc1();
    
    if (true) {
      let a = 10;
      var b = 20;
      if (true) {
        let b = 30;
      }
      console.log(b); // return :20
      // let : 블록 단위 {} 안에서 선언하면 {}안에서만 사용 가능
    }
  1. var 키워드로 만든 전역변수는 window에 보관
var userId = "Kim";
console.log(userId); // return : "Kim"
console.log(window.userId); // return : "Kim"
//var 키워드로 만든 전역변수는 window에도 보관된다

window.userAge = 60; // 전역변수 만들기
console.log(window.userAge); // return : 60
profile
매일 공부하기

0개의 댓글