[Typescript] 타입스크립트 변수와 함수 타입 정의

problem_hun·2023년 3월 7일
0

타입스크립트

목록 보기
5/16
post-thumbnail

일반적인 자바스크립트에서 변수 선언은 다음과 같이 하면 된다.

var str = 'hello'
var num = 14;
var array = [1,2,'배','열'];

하지만 타입스크립트에서는 변수마다 타입을 지정해주어야 한다.

  • 문자열

    let str: string = 'hello'
  • 숫자

    let num: number = 10;
  • 배열

    let arr: Array<number> = [1,2,3]; //number 타입만 들어갈 수 있다.
    let heroes: Array<string> = ['토르','헐크'] //string 타입만 들어갈 수 있다.

        👇 위 코드를 다음과 같이 작성할 수도 있다.

    let arr: number[] = [1,2,3]; 
    let heroes: string[] = ['토르','헐크'] 

    잘못된 타입을 배열의 원소로 넣으면 빨간줄로 에러가 나타나게 된다.


  • 튜플 : 배열의 길이가 고정되고 각 요소의 타입이 지정되어 있는 배열 형식

    let address: [string, number] = ["강남", 100];
  • 객체

    let obj: object = {};
    
     let person: { name: string; age: number } = {
       name: "토르",
       age: 1000,
     };

단순하게 객체의 타입만 지정해 줄 수도 있고, 프로퍼티의 키값의 타입까지 지정해 줄 수 있다.


  • 불리언

    let show:boolean = true; 
  • 💯 함수 💯

     - 파라미터의 타입 정의  
    function sum(a: number, b: number) {
       return a + b;
    }
    
      - 반환 값의 타입 정의
    function add(): void { } 
    // void: 리턴값이 없다는 것을 명시적으로 표시. 
    // void를 적지 않으면 return값이 없다고 에러가 난다.
    
     👇 종합하여 쓸 수 있다.
    function plus(a: number, b: number): number {
        return a + b;
    }
    

    기본적으로 타입스크립트에서는 받는 파라미터의 갯수까지도 알고, 이보다 부족하거나 많을 때 에러로 표시해준다.

     - 함수의 옵셔널(선택적) 파라미터 
     function log(a: string, b?: string) {}
    
     log("hello");
     log("hello", "world");

    옵셔널 파라미터는 파라미터를 선택적으로 넣을 수 있게 해준다. 파라미터의 타입을 지정할 때 파라미터 뒤에 물음표'?' 를 붙여서 작성해주면 된다.

profile
문제아

0개의 댓글