>  기사  >  웹 프론트엔드  >  Ajax 요청에서 async:false와 async:true의 차이점 분석

Ajax 요청에서 async:false와 async:true의 차이점 분석

亚连
亚连원래의
2018-05-22 17:23:251744검색

이제 Ajax 요청에서 async:false와 async:true의 차이점을 자세히 설명하는 기사를 가져오겠습니다. 이제 그것을 여러분과 공유하고 모든 사람에게 참고 자료로 제공하겠습니다.

예제는 다음과 같습니다.

function test(){
  var temp="00";
  $.ajax({
    async: false,
    type : "GET",
    url : 'userL_checkPhone.do',
    complete: function(msg){
      alert('complete');
    },
    success : function(data) {
      alert('success');
      temp=data;
      temp="aa";
    }
  });
  alert(temp);
  }

UserLAction checkPhone() method

  public void checkPhone() throws IOException {
    this.getServletResponse().setContentType("text/html; charset=UTF-8");
    this.getServletResponse().setHeader("Cache-Control", "no-cache");
    PrintWriter out = this.getServletResponse().getWriter();
    out.print("true");

  }

async: false, (기본값은 true);

async: false가 동기화되는 경우, 이 테스트에서는() method Ajax 요청은 userL_checkPhone.do 실행이 완료된 후에만 전체 브라우저를 잠급니다.

따라서 실행 결과는 첫 번째입니다. 하지만 문제가 있습니다. test()의 ajax 요청과 후속 작업이 비동기적으로 실행되므로 userL_checkPhone.do가 아직 실행되지 않은 경우 ajax 요청 이후의 작업이 실행되었을 수 있으므로

결과가 경고입니다. ('성공'); 경고('완료'); 경고("00");

이렇게 하면 경고("성공")와 경고(임시)가 거의 동시에 실행되는 것을 알 수 있습니다. 초기화된 값 temp = "00", 대신 temp="aa";

위 내용은 제가 모든 사람을 위해 정리한 내용입니다. 앞으로 모든 사람에게 도움이 되기를 바랍니다.

관련 기사:

Ajax는 mysql 데이터와 상호 작용하여 메시지 보드 기능을 생성합니다.

Ajax 동기화 및 비동기 문제에 대한 간략한 분석 및 솔루션

json 문자열 및 json 배열에 응답하는 ajax 인스턴스(그래픽 튜토리얼)

위 내용은 Ajax 요청에서 async:false와 async:true의 차이점 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.