React에 TypeScript 적용하기ReactContext

Q

초기값 setLocale에 파라미터를 넘겨주지 않아도 되는 이유

조회 202

좋아요 0

2024년 4월 8일




A
1개의 답변이 있어요
질문자 채택



2024년 4월 9일

댓글 4

2024년 4월 24일
일단 제가 열심히 찾아본 결과... 공식 문서에서 대충 답을 찾았습니다.
2024년 4월 24일
void를 반환하는 것으로 정의된 타입의 함수를 선언할 때 다른 타입이 반환되어도 괜찮은 이유: https://www.typescriptlang.org/docs/handbook/2/functions.html#assignability-of-functions
2024년 4월 24일
그리고 파라미터에 아무런 값도 넘겨주지 않아도 되는 이유에 대해서는 아래 링크에서 확인할 수 있었습니다. 대충 제가 이해한 바로는 콜백을 파라미터로 받는 함수에 정의된 타입이 만약 파라미터를 3개 받는다면, 그 함수를 호출할 때 넘겨주는 콜백은 3개 이하의 파라미터를 가진 함수는 모두 가능한 것 같습니다...https://www.typescriptlang.org/docs/handbook/2/functions.html#optional-parameters-in-callbacks
2024년 4월 24일
이런 말도 안되는 코드도 오류를 안 내더군요...
function myFunction(
arr: number[],
callback: (arg: any, index: number, something?: string) => void,
) {
for (let i = 0; i < arr.length; i++) {
callback(arr[i], i);
}
}

myFunction([1, 2, 3], () => [1, 2, 3]);
myFunction([1, 2, 3], (a) => "returned value");
myFunction([1, 2, 3], (a, i) => undefined);
myFunction([1, 2, 3], (a, i, s) => 1);

(주) 코드잇

대표강영훈

개인정보보호책임자강영훈

이메일support@codeit.kr

사업자 번호313-86-00797

통신판매업제 2019-서울중구-1034 호

주소서울특별시 중구 청계천로 100 시그니쳐타워 동관 10층 코드잇