0
내가 약속 기능은 다음과 같습니다자바 스크립트에서 비동기 함수에서 기다려온 값을 반환하는 방법은 무엇입니까?
function getAdressValidity(inputed_adress){
var isValid = false;
return new Promise(function(resolve, reject) {
MapApi.geocodeAddress(inputed_adress, function(err, data) {
if(err){
isValid = false;
} else {
isValid = true;
}
resolve(isValid);
});
});
}
을 그리고 난 여기 약속 소비 : 즉시 내 페이지 내가 출력을로드로, 그리고
async function isAdressValid(inputed_adress){
var isValid = await getAdressValidity(inputed_adress);
return isValid;
}
을 결과는 콘솔 :
console.log(Order.isAdressValid("1231231232"));
이 출력 결과는 다음과 같습니다.
내가 그렇게 CONSOLE.LOG 배치하면
, 그것은 기다려온 ouputes 결과 :처럼, 동기 만에 값을 반환하면서
async function isAdressValid(inputed_adress){
var isValid = await getAdressValidity(inputed_adress);
console.log(isValid);
// return isValid;
}
다른 스레드에 결과를 기다릴 수있는 방법이 있나요 내 함수가 수행 할 것으로 예상됩니까?
이 ES6 방법을 설명하기 위해. Async는 실제로 후드에서의 약속이기 때문에 동기화 코드에서 비동기 함수를 직접 호출하면 약속이 반환됩니다. – Shammoo