불리언 (boolean)

boolean은 true와 false 밖에 존재 하지 않습니다. C 같은 일부 언어에서는 boolean 대신 숫자를 사용합니다.
0 은 false 이고, 다른 숫자는 모두 true 입니다. 자바스크립트에서도 비슷한 방식을 사용합니다.

모든 값을 참 같은 값(truthy), 거짓 같은 값(falsy) 으로 나눌 수 있습니다.

boolean을 작성 할때 문자열로 작성해서는 안됩니다. boolean 리터널은 다음과 같이 작성 해야합니다.

let heating = true;
let cooling = false;

심볼(symbol)

심볼(symbol)은 유일한 토큰을 나타내기 위해 ES6에서 도입한 새 데이터 타입입니다.

심볼은 다른 어떤 심볼과도 일치하지 않는 고유의 값입니다. 이런 면에서는 심볼은 객체와 유사합니다.

심볼은 Symbol() 생성자로 만듭니다. 원한다면 생성자에 간단한 설명을 추가할 수 있습니다.

const RED = Symbol("The color of a sunset!");
const ORANGE = Symbol("The color of a sunset!");
RED === ORANGE // false: 심볼은 모두 서로 다릅니다.

다른 식별자와 혼동해서는 안 되는 고유 식별자가 필요하다면 심볼을 사용하면 됩니다.

  • 객체지향 프로그래밍 처럼 심볼을 만들 때 new 키워드는 사용 할 수 없습니다.
  • 대문자로 시작하는 식별자는 new와 함께 쓴다는 불문율의 예외임을 새로 기억해야합니다.

null 과 undefined

null 과 undefined는 자바스크립트의 특별한 타입입니다.

null 이 가질수 있는 값은 null 하나 뿐이며, undefined가 가질 수 있는 값도 undefined 하나 뿐입니다.

두개의 의미는 모두 존재 하지 않는것 을 의미합니다. 이 두개의 타입은 같은 의미이지만 서로 다른 데이터 타입입니다.

null 은 프로그래머에게 허용된 데이터 타입이며 undefined는 자바스크립트 자체에서 사용한다는 부분이 중요합니다. 강제적인 규칙은 아니지만, undefined 값을 사용 할때는 꼭 필요할 때만 사용하도록 주의해야합니다.

사용 할때는 아직 값이 주어지지 않은 변수의 동작을 고의로 흉내 내야 할때만 사용하도록 주의합니다.

변수값을 아직 모르거나 적용할수 없는 경우 null 이 더 좋은 선택이 될수 있습니다.

let nullTmp = null;
let undefinedTmp_1;
let undefieedTmp_2 = undefined;

+ Recent posts