PHP 파일에서 json 응답을 얻는 Jquery ajax 호출이 있는데, json 응답은 훌륭하고 정확하게 응답 로그를 콘솔에 넣을 수 있습니다. 아약스 결과를 벗어난 정보를 저장할 수 있다면 배열을 업데이트 할 수 없습니다. 코드는 다음과 같습니다. 아래에 결과를 게시했습니다.Jquery로 배열에 아약스 응답 저장하기
window.array={name: 'john',color:'red'};
console.log(array['name']);
console.log(array['color']);
$.ajax({
url : 'getJsons.php',
type : 'POST',
data : data,
dataType : 'json',
success : function (data) {
array['name'] = data['name'];
array['color'] = data['color'];
console.log(array['name']);
console.log(array['color']);
}
});
console.log(array['name']);
console.log(array['color']);
이 다음과 같은 콘솔가 발생합니다 : 그래서
john
red
john
red
marry
blue
내가 바로 처음 콘솔을 얻을 수 있지만 아약스 호출하기 전에 아약스 호출 후 스크립트를로드하는 것, 이유가 있다는 것입니다 ? 왜냐하면 스크립트가 이미로드 된 후에 가져 오기 때문에 나머지 코드에서 아약스 결과를 사용할 수 없기 때문입니다. 아약스가 나머지 전에 실행되도록하는 방법이 있습니까?
아약스는 비동기이며, 아약스 요청 –
을 안내한다이 블로그 게시물의 특정 콜백 내부 코드 로직 이것을 달성하는 여러 가지 방법과 선호되는 방법 : http://www.bitstorm.org/weblog/2012-1/Deferred_and_promise_in_jQuery.html –