TypeScript에서 조건에 따라 타입 함수를 정의하는 출력 방법
P粉764836448
P粉764836448 2023-08-14 18:18:08
0
1
543
<p>내 함수의 출력 유형을 정의하려고 하는데 <code>string</code> 사이에 <code>toNumberIfNeeded</code> 플래그를 사용하고 싶습니다. /code> 유형 <code>toNumberIfNeeded</code>가 true인 경우 이 함수는 숫자 유형을 반환하고, 그렇지 않으면 문자열 유형을 반환한다고 가정하여 사이에 조건을 설정합니다. 어떻게 해야 하나요? </p> <pre class="brush:php;toolbar:false;">인터페이스 옵션 { 대문자?: 부울; filterSpecialChars?: 부울; toNumberIfNeeded?: 부울; } const textTransformer = (텍스트: 문자열, 옵션?: 옵션) => const { 대문자, filterSpecialChars, toNumberIfNeeded} = 옵션 {}; //내 처리 논리 코드 return toNumberIfNeeded ?parseInt(text) : 텍스트; }</pre> <p>예상되는 예:</p> <pre class="brush:php;toolbar:false;">textTransformer('hello') // 문자열 유형을 반환합니다. textTransformer('123', { toNumberIfNeeded: true }) // 숫자 유형을 반환합니다</pre>
P粉764836448
P粉764836448

모든 응답(1)
P粉878542459

리팩터링할 수 있습니다textTransformer() 方法,接受一个泛型参数,并使用条件类型来检查 toNumberIfNeeded 是否为 truefalse。我认为 TypeScript 无法自动缩小返回值的类型。你必须使用类型断言,否则返回类型将被推断为 string | number.

으아악
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿