개발일지

타입 스크립트 함수 본문

typescript

타입 스크립트 함수

eodovo 2022. 11. 3. 11:46
728x90

함수 타입 정의 방법

function hello(name:string):string{
    return `Hello, ${name|| "world"}`; //name에 들어온다면 name 출력, 아닐 경우 world
}

const result = hello();//에러발생
const result2 = hello('kim');
console.log(result,result2);

나머지 매개변수

function add(...nums:number[]):number{
    return nums.reduce((result,num) => result +num);
}
console.log(add(1,2,3));
console.log(add(1,2,3,4,5,6,7,8,9,10));

 

interface User{
    name:string;
    age:number
}

function join(name:string, age:number):User{
    return{
        name,
        age
    };
}

const person1:User = join('홍길동',60);
console.log(person1);
//{
  "name": "홍길동",
  "age": 60
//} 객체로 반환됨.



interface User{
    name:string;
    age:number
}

function join(name:string, age:number):{name:string,age:number}{
    return{
        name,
        age
    };
}

const person1:User = join('홍길동',60);
console.log(person1);

function join의 리턴값은 오브젝트인데 타입을 object로 정의할 수 없기 때문에 인터페이스 User를 지정해주거나

객체 상태로 키와 값을 매겨 타입을 지정한다. object는 튜플의 type이나 interface를 걸어주는 편이 좋다.

 

화살표 함수로 함수 정의하기

interface User{
    name:string;
    age:number;
}

interface Func{
    (name:string,age:number): User;
}

const join:Func =(name, age)=>{
    return{
        name,
        age
    }
}

const person1:User =join('홍길동',60)
console.log(person1)

'typescript' 카테고리의 다른 글

TS + React /스타일드 컴포넌트 props를 이용한 가변 UI 만들기  (0) 2023.01.24
제네릭  (0) 2022.11.03
클래스 (class)  (0) 2022.11.03
리터럴 , 유니온, 교차타입  (0) 2022.11.03
타입 스크립트  (0) 2022.11.02
Comments