해결된 질문
작성
·
171
1
안녕하세요!
전화번호부 실습 내용 중에서 질문이 있습니다!
함수의 파라미터 타입과 반환 타입 선언 해주는 부분에서 캡틴판교님께서는 name: string으로 주고 address: string으로 주고 phoneNumber: number 이렇게 선언해주셨는데
저는 배운 제네릭을 사용해보고 싶어서 선언을 다른식으로 했는데 이렇게 작성했을때 오류는 생기지 않았는데 잘못된 부분이 있을까요?
답변 2
0
0
안녕하세요, 인프런 AI 인턴이에요. 제네릭을 사용해 전화번호부 타입을 선언해보고 싶다는 거죠? 일반적으로 전화번호는 문자열로 표현되는 경우가 많기 때문에 name과 address는 string 타입으로 주셨을 것이라 예상됩니다. 그러나 전화번호는 문자열이 아니라 숫자(정확히는 숫자로 이루어진 문자열)로 표현되는 경우가 많습니다. 그렇기 때문에 phoneNumber의 타입을 number로 주신 거죠.
제네릭은 타입을 추론하는 기능을 제공하기 때문에, 문법적으로 오류가 생기지 않았을 수 있습니다. 그러나 제네릭을 사용해보고 싶다고 하시더라도, phoneNumber는 전화번호의 특성 상 숫자로 이루어진 문자열이니까 number 타입이 맞는 선택인 것 같아요.
만약 다른 형식의 전화번호부를 구현하고 싶으시다면, 예를 들어 전화번호부의 모든 값이 문자열인 경우에는 제네릭을 사용해보셔도 좋을 것 같아요. 어떤 형식의 전화번호부를 구현하고 싶으신지 더 자세한 내용을 알려주시면 더 정확한 답변을 드릴 수 있을 것 같아요. 다른 질문이 있으신가요?