티스토리 뷰

목차

    Primitive 타입

    프로그램을 설명할 때 흔히 리터럴이라는 말이 나옵니다. 리터럴이란 것은 소스 코드의 고정된 값을 대표하는 용어(데이터 자료형)입니다. TypeScript에는 여러 종류가 있습니다.


    • boolean
    • number
    • string
    • 배열
    • 객체
    • 함수
    • undefined
    • null


    이 가운데 더는 분해할 수 없는 단순한 데이터를 타입스크립트에선 "기본 형식, 원시형(Promitive 프리미티브)"이라고 합니다.

    boolean 리터럴

    타입스크립트 boolean 형은 true/false 두 논리 값을 표현하는 데이터 자료형입니다. if문, while 루프 등의 제어 구문과 삼항 연산자 등을 사용하여 Typescript 프로그램 동작을 제어하는 중요한 자료형입니다.


    // 값을 표시

    console.log(true);

    console.log(false);


    // 변수에 대입. 변수 자료형은 boolean

    const flag: boolean = true;


    // 다른 데이터 자료형으로 변경

    console.log(flag.toString()); // 'true' / 'false' 표현

    console.log(String(flag));    // 여기서도 변형 가능

    console.log(Number(flag));    // 1 또는 0으로 표현


    // 다른 데이터형을 true / false로 표현

    const notEmpty = Boolean("test string"); // 변환 방법은 뒷부분에 적음

    const flag = flagStr === 'true';         // 'true' 문자열을 true로 표현

    const str = "not empty string";          // true/false 반전되지만 연산자 하나로 변환 가능

    const isEmpty = !str;                    // 반전. !Boolean()과 같은 의미

    const notEmpty = !!str;                  // 반전의 반전


    TypeScript는 숫자 0(음수 포함), 빈 문자열, null, undefined, NaN을 변환하면 false, 그 이외를 변환하면 true 입니다.

    다만, 파이썬은 빈 문자열이나 빈 배열은 false입니다. ruby는 숫자 0, 빈 문자열이 true입니다.



    드모르간 법칙

    if문 조건식이 복잡할 때 축약을 위해 사용하는 것이 드모르간 법칙입니다. 다음과 같은 법칙으로 NOT, AND, OR를 조합할 수 있습니다.


    드모르간의 법칙


    !(P || Q) == !P && !Q

    !(P && Q) == !P || !Q


    타입스크립트를 포함해 거의 모든 언어는 우변에서 좌변으로 대입해야 가독성이 높아진다고 생각합니다. 그리고 NOT 집합끼리의 연산은 실제로 ... 거의 사용하지 않을 겁니다. 집합의 AND/OR를 생각해서 반전하는 것이 더 쉬우니까요.


    드모르간 법칙은 구성 요소가 많고 논리식 등 수식을 정리할 때 유용합니다.


    ... 미완성 글 입니다 ...