모던 자바스크립트 6장. 데이터 타입

ANN·2025년 11월 24일

모던잡스

목록 보기
3/7
post-thumbnail

원시타입

숫자, 문자열, 불리언, undefined, null, 심벌 타입...

객체타입

객체, 함수, 배열 등의 것들을 말함

📌 템플릿 리터럴

런타임에 일반 문자열로 변환되어 처리됨

일명 백틱(``)

📌 심벌 타입

변경 불가능한 원시 타입의 값

다른 값과 중복되지 않는 유일무이한 값
➡️ 주로 이름이 충돌할 위험이 없는 객체의 유일한 프로퍼티 키를 만들기 위해 사용

심벌 이외의 원시 값은 리터럴을 통해 생성하지만,
심벌은 Su,bol 함수를 호출해 생성한다.

이때 생성된 심벌 값은 외부에 노출되지 않으며,
다른 값과 절대 중복되지 않는 유일무이한 값이다.

// 심벌값 생성
var key = Symbol('key');
console.log(typeof key); // symbol

// 객체 생성
var obj = {};

// 이름이 충돌할 위험이 없는 유일무이한 값인 심벌을 프로퍼티 키로 사용한다.
obj[key] = 'value';
console.log(obj[key]); // value

📌 동적 타이핑

변수를 사용할 때 주의할 사항

  • 변수는 꼭 필요한 경우에 한해 제한적으로 사용한다. 변수 값은 재할당에 의해 언제든지 변경될 수 있다. 이로 인해 동적 타입 언어인 자바스크립트는 타입을 잘못 예측해 오류가 발생할 가능성이 크다. 변수의 개수가 많으면 많을수록 오류가 발생할 확률도 높아진다.
  • 변수의 유효 범위(스코프)는 최대한 좁게 만들어 변수의 부작용을 억제해야 한다. 변수의 유효 범위가 넓으면 넓을수록 변수로 인해 오류가 발생할 확률이 높아진다.
  • 전역변수는 최대한 사용하지 않는다. 전역변수는 의도치 않게 값이 변경될 가능성도 높고 다른 코드에 영향을 줄 가능성도 높다.
  • 변수보다는 상수를 사용해 값의 변경을 억제한다.
  • 변수 이름은 변수의 목적이나 의미를 파악할 수 있도록 네이밍한다.

0개의 댓글