오늘 배운 내용:
정의: 비동기 프로그래밍을 통해 JavaScript는 이전 작업이 완료될 때까지 기다리지 않고 작업을 수행할 수 있습니다.
사용 사례: API 호출 또는 기타 시간이 많이 소요되는 작업 수행
이점: 응답을 기다리는 동안 다른 작업을 실행할 수 있어 효율성이 향상됩니다.
약속 상태:
보류 중: 초기 상태, 결과를 기다리는 중입니다.
해결됨: 작업이 성공했습니다.
거부됨: 작업이 실패했습니다.
방법:
.then(): Promise가 해결되면 실행됩니다.
.catch(): Promise가 거부되면 실행됩니다.
.finally(): Promise가 해결되거나 거부되는지 여부에 관계없이 실행됩니다.
약속 예시
const fetchData = () => { return new Promise((resolve, reject) => { let success = true; // Simulating success or failure setTimeout(() => { success ? resolve("Data fetched!") : reject("Failed to fetch data."); }, 2000); }); }; fetchData() .then((data) => console.log(data)) // Output: Data fetched! .catch((error) => console.error(error)) .finally(() => console.log("Operation completed."));
비동기/대기의 예:
const fetchDataAsync = async () => { try { const data = await fetchData(); // Wait for the promise to resolve console.log(data); // Output: Data fetched! } catch (error) { console.error(error); } finally { console.log("Operation completed."); } }; fetchDataAsync();
5.실제 비유:
6.약속.모두
const promise1 = Promise.resolve("Task 1 completed"); const promise2 = Promise.resolve("Task 2 completed"); Promise.all([promise1, promise2]) .then((results) => console.log(results)) // Output: ["Task 1 completed", "Task 2 completed"] .catch((error) => console.error(error));
const fetchDataFromAPI = async () => { try { const response = await fetch("https://jsonplaceholder.typicode.com/posts"); const data = await response.json(); console.log(data); } catch (error) { console.error("Error fetching data:", error); } }; fetchDataFromAPI();
하이라이트
지금까지는 정말 아름다운 여행이었습니다.
불이 난 10일차
위 내용은 나의 React 여정: 9일차의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!