이 코드는 중단됩니다.클로저를 사용하여 동기식 JavaScript 강제 적용
익명 함수의 응답이 외부 범위와 연결되지 않은 새 변수이기 때문에 적절하다고 확신합니다. 어떻게 해결할 수 있습니까?
function foo() { //...
var url = "http://urliciously-urlish-url"
response = null;
$.get(url, function (data) {response = data;
});
while(response === null)
{
1;
}
console.log(response);
//...
}
참고 나는 응답이 null이 아닌 될 때까지이 디자인은 (폴링 시스템을위한 평소와 같이) 페이지를 중단됩니다 것을 알고 있습니다. 이런 맥락에서는 괜찮습니다.
$ .get이 물건을 반품하고 있음을 확인 했습니까? –
@Cris : 예, URL이 정확합니다. –
아래의 답변은 정확합니다. 일반적으로 비동기 적으로 작성하는 것이 좋습니다. 단점이 있습니다. URL이 정확하다고해서 크롬 검사기, 피들러를 사용하는 것이 현명하지 않다는 의미는 아닙니다. 당신이 데이터를 받고 있는지 확인하기위한 다른 것. –