Digking's cave

TypeScript 기본 / 기초문법) Tuple / Any /unknown / void / never 본문

기초/TypeScript

TypeScript 기본 / 기초문법) Tuple / Any /unknown / void / never

디깅 2022. 8. 19. 22:33
728x90

Tuple

변수명 : [타입 , 타입, 타입..] = [값, 값, 값..]

변수명 : readonly [타입 , 타입, 타입..] = [값, 값, 값..]

const numbers : readonly number[] = [3,4,5,6]

const examplelist : [string, number, boolean] = ["diging", 28, true]

const examplelist : readonly [string, number, boolean] = ["diging", 28, true]

 

any

any를 앞에 쓰면 TypeScript문법이 사용되지 않는다.

변수명 : any []..

 

unknown

변수의 타입을 모를 때 unknow으로 일단 임시 지정해준다.

let tempobc : unknown;

if(typeof tempobc === 'number'){
    let a = tempobc + 1
}

if(typeof tempobc === 'string'){
    let a = tempobc.toUpperCase();
}

void

return 값이 없는 함수

TypeScript 기본 / 기초문법 ) 함수 선언 / 인자 있는 함수 선언 / 리턴값 함수

 

TypeScript 기본 / 기초문법 ) 함수 선언 / 인자 있는 함수 선언 / 리턴값 함수

함수 선언 function 함수명 (){ } 인자(parameter)가 있는 함수 function 함수명 (변수명: 타입){ } optional 인자가 있는 함수 function 함수명 (변수명?: 타입){ } return값이 없는 함수 선언 function 함수명 (..

diking.tistory.com

728x90

never

함수가 return 하지 않고 오류를 발생시키는 함수

function hello(): never{
    throw new Error("xxx")
}

타입이 두가지 일 수도 있는 상황에 발생

function hello(name:string|number){
	
    if(typeof name === "string"){
        name #name은 string
    } else if (typeof name === "number"){
        name #name은 number
    } else { #string이거나 number라고 지정되어있기 때문에
        name #name은 never이고 절대 이 코드로는 실행 될 수 없음
    }
}
반응형