ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 6. Tuple & Enum
    Typescript 2022. 10. 18. 09:21

     

     

    Tuples
    • 튜플. 고정된 길이타입의 위치를 가지는 배열
    let rgbColors: [number, number, number] = [255, 255, 255]
    
    rgbColors = [123, 5] // ERROR - rgbColors length is 3
    rgbColors = [255, 0, '255'] // ERROR - third type of rgbColors is number

     

     

    • Custom Type에서도 튜플 배열 사용
    type HttpResponse = [number, string]
    
    let goodRes: HttpResponse = [200, 'SUCCESS']
    goodRes = ['FAIL', 404] // ERROR - tuple type is [number, string]
    
    let responses: HttpResponse[] = [[400, 'FAIL'], [403, 'ERROR']]

     

     

     

    Enums
    • 명명된 상수 집합 / 반복적으로 참조하는 값들의 집합
    • ex ) 방향키(UP, RIGHT, DOWN, LEFT) / 주문 상태 (PENDING, SHIPPED, DELIVERED ...)
    • enum에 선언된 상수들을 특별히 초기화하지 않는 경우 자동으로 초기화
    enum OrderStatus {
    	PENDING, // PENDING = 0
            SHIPPED, // SHIPPED = 1
            DELIVERED, // DELIVERED = 2
            RETURNED // RETURNED = 3
    }
    
    function isDelivered (status: OrderStatus) {
    	return status === OrderStatus.DELIVERED
    }
    
    isDelivered(OrderStatus.DELIVERED) // OK
    isDelivered(2) // OK
    isDelivered('DELIVERED') // ERROR

     

     

    • Enum의 초기화
    • number / string 모두 가능
    enum ArrowKeys {
    	UP = 'up'
            DOWN = 'down'
            RIGHT = 'right'
            LEFT = 'left'
    }
    
    enum Temp {
    	BLACK = 255
        	RED = 120
            ERROR = 'error'
    }

     

     

     

     

     

     

     

     

     

     

    'Typescript' 카테고리의 다른 글

    8. Typescript Configuring  (0) 2022.10.21
    7. Interface  (0) 2022.10.19
    5. Union Type  (0) 2022.10.17
    4. Array Type  (0) 2022.10.17
    3. Object Type  (0) 2022.10.13
Designed by Tistory.