상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
궁금한 상식 보기
중고차 구매 시 차량의 배기 가스 상태는 어떻게 확인하나요?
중고차 구매 시 차량의 와이퍼 상태는 어떻게 체크하나요?
SWOT 분석이란 무엇인가요?
모바일 마케팅의 중요성은 무엇인가요?
'라이온 킹'의 캐릭터 디자인은 어떻게 이루어졌나요?
'라이온 킹'의 제작 과정에서 어떤 어려움이 있었나요?
아파트 분양권을 상속할 수 있나요?
아파트 분양권을 구매할 때의 시장 조사 방법은 무엇인가요?
브랜드 포지셔닝이란 무엇인가요?
디즈니의 '신데렐라'에서 주인공이 꿈꾸는 삶은 어떤 모습인가요?
실손의료보험의 가입 후 보험금 청구가 가능한 시점은 언제인가요?
광고홍보학과의 학생들이 자주 사용하는 소셜 미디어 플랫폼은 무엇인가요?
Previous
Next
수정하기 - 타입스크립트에서 Promise의 타입을 정의하는 방법은 무엇인가요?
닉네임
비밀번호
제목
내용
[이미지 업로드는 권한이 있는 사람만 가능. 하단 카톡으로 연락]
<a href='https://sangseek.com/sangseeks/타입스크립트/ko'>타입스크립트</a>에서 Promise의 타입을 정의하는 방법은 매우 간단하면서도 유용합니다. Promise는 비동기 작업의 결과를 나타내는 객체로, 성공적으로 완료되었을 때의 <a href='https://sangseek.com/sangseeks/값/ko'>값</a> 또는 실패했을 때의 오류를 처리할 수 있습니다. 타입스크립트는 이러한 Promise의 타입을 명확하게 정의할 수 있는 기능을 제공합니다. 기본적인 Promise 타입 정의 Promise는 제네릭 타입으로 정의되어 있습니다. 기본적인 형태는 다음과 같습니다: ```typescript Promise<T> ``` 여기서 `T`는 Promise가 성공적으로 완료되었을 때 반환되는 값의 타입을 나타냅니다. 예를 들어, 문자열을 반환하는 Promise는 다음과 같이 정의할 수 있습니다: ```typescript const promise: Promise<string> = new Promise((resolve, reject) => { // 비동기 작업 수행 resolve("Hello, World!"); }); ``` 위의 예제에서 `promise`는 문자열을 반환하는 Promise로 정의되었습니다. `resolve` 함수는 비동기 작업이 성공적으로 완료되었을 때 호출되며, 이 경우 "Hello, World!"라는 문자열이 반환됩니다. Promise의 실패 타입 정의 Promise는 성공적인 결과뿐만 아니라 실패한 경우의 타입도 정의할 수 있습니다. 일반적으로 Promise는 성공과 실패를 처리하기 위해 두 가지 타입을 사용합니다. 성공적인 결과의 타입과 실패한 경우의 오류 타입을 정의할 수 있습니다. 예를 들어: ```typescript const promise: Promise<string> = new Promise((resolve, reject) => { const success = true; // 비동기 작업의 성공 여부 if (success) { resolve("Operation successful"); } else { reject(new Error("Operation failed")); } }); ``` 여기서 `reject`는 오류를 발생시키며, 이 오류는 `Error` 타입으로 정의되어 있습니다. Promise의 실패 타입을 명시적으로 정의하고 싶다면, 다음과 같이 할 수 있습니다: ```typescript type MyPromiseResult = Promise<string | Error>; ``` 이렇게 하면 `MyPromiseResult`는 문자열 또는 오류를 반환할 수 있는 Promise로 정의됩니다. <a href='https://sangseek.com/sangseeks/비동기 함수/ko'>비동기 함수</a>와 Promise 타입스크립트에서는 `async`와 `await` 키워드를 사용하여 비동기 함수를 정의할 수 있습니다. `async` 함수는 항상 Promise를 반환합니다. 예를 들어: ```typescript async function <a href='https://sangseek.com/sangseeks/fetchData/ko'>fetchData</a>(): Promise<string> { return new Promise((resolve) => { setTimeout(() => { resolve("Fetched data"); }, 1000); }); } ``` 위의 `fetchData` 함수는 문자열을 반환하는 Promise를 반환합니다. 이 함수를 호출할 때는 `await`를 사용하여 결과를 기다릴 수 있습니다: ```typescript async function main() { const data = await fetchData(); console.log(data); // "Fetched data" } ``` 복합적인 Promise 타입 정의 Promise는 여러 개의 값을 반환할 수도 있습니다. 이 경우에는 <a href='https://sangseek.com/sangseeks/튜플/ko'>튜플</a>이나 객체를 사용하여 여러 값을 포함하는 타입을 정의할 수 있습니다. 예를 들어: ```typescript type <a href='https://sangseek.com/sangseeks/ApiResponse/ko'>ApiResponse</a> = { data: string; status: number; }; const fetchApiData = (): Promise<ApiResponse> => { return new Promise((resolve) => { setTimeout(() => { resolve({ data: "API response", status: 200 }); }, 1000); }); }; ``` 위의 예제에서 `fetchApiData` 함수는 `ApiResponse` 타입을 반환하는 Promise를 반환합니다. 이처럼 복합적인 타입을 사용하여 Promise의 반환값을 더욱 명확하게 정의할 수 있습니다. 결론 타입스크립트에서 Promise의 타입을 정의하는 방법은 매우 유연하고 강력합니다. 기본적인 Promise의 사용부터 시작하여, 실패 타입, 비동기 함수, 복합적인 타입 정의까지 다양한 방식으로 Promise를 활용할 수 있습니다. 이를 통해 비동기 작업의 결과를 명확하게 타입으로 정의하고, 코드의 가독성과 안정성을 높일 수 있습니다. 타입스크립트를 사용하여 Promise를 정의하고 활용하는 것은 비동기 프로그래밍에서 매우 중요한 부분이며, 이를 통해 더욱 안전하고 유지보수하기 쉬운 코드를 작성할 수 있습니다.
이용안내
커뮤니티 이용안내
×
- 게시한 게시글로 발생하는 문제는 게시자에게 책임이 있습니다.
- 게시글이 타인/타업체의 저작권을 침해할 경우 모든 책임은 게시자에게 있습니다. 게시자가 모든 손해를 부담해야 합니다.
- 상식닷컴 운영자는 게시자와 상의하지 않고 게시글을 수정 또는 삭제할 수 있습니다.
- 상식닷컴 운영자는 깨끗한 커뮤니티 공간을 만드는 것이 1순위입니다.
수정하기
취소하기