[js] dot syntax vs computed syntax

sinsin·2022년 4월 30일
0

객체 정보를 호출하는 방법에는 두 가지가 있다.

//dot syntax
console.log(user.name);

//computed syntax
console.log(user["name"]); //key는 반드시 string이어야 함.

dot syntax는 존재하는 값을 불러올 때 사용하고, computed syntax는 자바스크립트의 특성에 따라 원하는 값이 정확히 무엇인지 알 수 없을 때 사용한다.

  • Dynamic Typing: 데이터 타입이 선언 시가 아니라, 실행할 때 할당된 값에 따라 유동적으로 결정됨.  👉  TypeScript의 필요성!

  function printValue1(obj, key) {
    console.log(obj.key);
  }
  function printValue2(obj, key) {
    console.log(obj[key]);
  }

  const user1 = { name: "sinsin", age: 100 };
  printValue1(user1, "name"); //undefined
  printValue2(user1, "name"); //sinsin

배열을 넣으면 사용자가 원하는 키에 대한 값을 출력해주는 위와 같은 함수는 인자로 받는 값들이 무엇인지 들어오기 전까지는 모르는 상태이므로, dot syntax를 사용하면 undefined가 되는 것이다.

0개의 댓글