TypeScript #3 타입명시

JohnKim·2021년 8월 29일
0

typescript

목록 보기
2/4
post-thumbnail

타입명시? 👀

변수를 선언할 때, 변수 값의 타입을 명시함으로써 변수 값의 데이터 타입을 지정

어떻게 사용하는가?

let x : string = 'hello';

변수이름 뒤에 콜론, 변수의 데이터 타입을 지정해주면 된다.

타입이 명시된 변수는 항상 그 타입의 값을 가져야한다.

함수에서의 타입명시

function formatDate(d:Date): string {
  let year = d.getFullYear();
	let month = d.getMonth() + 1;
	let day = d.getDate();
  
  	return `${year}${month}${day}`
};

const today = formatDate(new Date());
console.log(today);
  • 매개변수의 우측에 콜론(:)과 매개변수의 타입을 정의gksek.
  • return 값의 타입은 소괄호()우측에 타입을 정의한다.
  • formatDate의 매개변수 d는 Date 객체 타입을 받아야하고, return 값은 문자열이어야 한다.

다양한 매개변수 타입

let formatDate = (d: Date | number, lang = "ko", delimiter?: string): string => {
	// 로직 생략
};

formatDate(new Date());
formatDate(20201028, "en");
formatDate(20201028, "en", "-");
  • 두 번째 매개변수인 lang의 경우 인자를 전달하지 않으면 "ko"라는 문자열 값이 할당되도록 하였다.
  • delimiter는 물음표를 사용하여 선택적으로 인자를 전달하도록 함.

return 값 명시할 때 주의할 점 🧐

  • void나 any타입이 아닌경우에 타입이 명시된 함수는 반드시 value가 반환되어야 한다.

  • 만약 object 타입의 값이 반환되는 경우에 {}중괄호를 사용하여 반환되는 객체의 구조를 타입으로 지정이 가능하다.

function getStudentInfo(studentID: number){
	studentID: number;
    stundentName: string;
    age: number;
    gender: stirng;
}{
  //로직
}

다만 조금 로직이 지져분해 질 수 있어서 이럴경우 interface를 사용해주는것이 좀더 깔끔하다.

interface에 대한 내용은 다음 포스팅에서! 😎

0개의 댓글

관련 채용 정보