• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 JavaScript, TS 게시판 제네릭 타입설정은

제네릭 타입설정은

5 글 보임 - 1 에서 5 까지 (총 5 중에서)
  • 글쓴이
  • #79022

    정중식
    참가자
    제네릭 타입설정은 function같은 함수선언식에만 가능한가요?
    
    const 함수 = ()=>{
    ...
    }
    
    이런식의 함수표현식에는 제네릭타입을 설정 못해줄까요? 숙제하는데 const 함수 ()=>{}이런식으로하니까 빨간줄을 그어주더라구요..
    
    또 강의에서
    
    
    '(참고) class도 class <MyType> {} 이런 식으로 만들면 new로 뽑을 때 타입파라미터를 집어넣을 수 있습니다.
    type Age<MyType> = MyType 이런 식으로 타입변수에도 사용가능 '
    
    라고하셨는데 혹시 죄송하지만 예시를 몇가지 더 들어주시면안될까요? 
    감이 안잡힙니다.ㅠ. ㅠ
    
    1. 
    class도 class <MyType> {} 이런 식으로 만들면 new로 뽑을 때 타입파라미터를 집어넣을 수 있습니다.
    라고하셨는데, 그러면 이런식으로 사용하면될까요?
    class zz<T>{...}
    
    const t<number> = new zz('');
    
    2.
    type Age<MyType> = MyType 이런 식으로 타입변수에도 사용가능
    라고 하셨는데,
    type alias의 타입을 여러 타입으로 명시해주고싶어서 제네릭을 사용해주신건가요?
    여기서 제네릭을 사용해주고싶지 않으면
    
    type Age ={
    age:number;
    }
    이런식으로 설정해주고,
    
    만약 저렇게 type Age<MyType> = MyType 타입을 제네릭으로 설정해줬을때 사용은 어떻게해주면될까요?
    
    선생님 도움이필요해용 플리즈
    
    
    #79057

    codingapple
    키 마스터
    화살표함수 되긴되는데 잘안되어서 되는방법 찾아서 써야합니다 
    클래스는 이렇게 씁시다 https://www.typescriptlang.org/docs/handbook/2/generics.html#generic-classes
    
    type a<T> = T;
    var test : a<string>;
    이러면 test변수는 string타입이 됩니다
    #79189

    정중식
    참가자
    오 감사합니다!! 
    선생님 한가지만 더 여쭙겠습니다
    
    선생님 숙제중에서
    
    
    (숙제2) 이렇게 생긴 자료는 타입지정 어떻게 해야할까요?
    let arr = ['동서녹차', 4000, true, false, true, true, false, true]
    몇개인지는 모르겠지만 true와 false가 셋째 자료부터 잔뜩 들어올 수 있다고 합니다. 
    tuple 타입과 spread 연산자를 써보도록 합시다. 
    정답은:
    {
      function 함수(...a: [string, boolean, ...(string | number)[]]) {}
      함수('2', true, 2);
    }
    
    
    이거인데요 이런식으로 해줘도 상관없을까요?
    
    제가 풀은것,
    
    
    {
      function 함수(...a: [string, boolean, number | string]) {}
      함수('2', true, 2);
    }
    
    
    
    
    		
    	
    #79203

    codingapple
    키 마스터
    그 함수는 파라미터 4개 이상 넣으면 아마 안될수도요
    #79271

    정중식
    참가자
    아 그렇네요 지금 당장은 되지만, 유연하지못한 코드가되버리는군요 감사합니다
5 글 보임 - 1 에서 5 까지 (총 5 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠