SeouliteLab

jQuery의 deferred.done() 메서드 본문

카테고리 없음

jQuery의 deferred.done() 메서드

Seoulite Lab 2024. 3. 31. 00:17

jQuery의 deferred.done() 메서드는 비동기 작업이 성공적으로 완료되었을 때 실행할 콜백 함수를 등록하는 데 사용됩니다. 이 메서드를 사용하면 비동기 작업의 성공 여부를 감지하고 적절한 후속 작업을 수행할 수 있습니다. 이제 deferred.done() 메서드에 대해 자세히 살펴보고 예제를 통해 이해해보겠습니다.

deferred.done() 메서드 이해하기

deferred.done() 메서드는 비동기 작업이 성공적으로 완료되었을 때 실행할 콜백 함수를 등록합니다. 이 메서드를 사용하면 비동기 작업이 성공적으로 처리되었을 때 실행할 후속 작업을 정의할 수 있습니다.

구문:

deferred.done(doneCallback);
  • doneCallback: 비동기 작업이 성공적으로 완료되었을 때 실행되는 콜백 함수입니다.

이제 몇 가지 예제를 통해 이 메서드의 사용법을 살펴보겠습니다.

예제:

예제 1: 비동기 작업 완료 처리

$.ajax({
  url: "example.php",
  success: function(response) {
    console.log("요청 성공:", response);
  }
}).done(function() {
  console.log("비동기 작업 완료");
});

출력:

// 요청 성공 시
요청 성공: response
비동기 작업 완료

예제 2: Deferred 객체 사용

var deferred = $.Deferred();

deferred.done(function() {
  console.log("완료");
});

deferred.resolve(); // 비동기 작업 성공
// deferred.reject(); // 비동기 작업 실패

출력:

// 성공 시
완료

// 실패 시 출력 없음

예제 3: 비동기 작업이 Promise 객체를 반환하는 경우

var promise = $.ajax({ url: "example.php" });

promise.done(function(response) {
  console.log("요청 성공:", response);
}).done(function() {
  console.log("비동기 작업 완료");
});

출력:

// 요청 성공 시
요청 성공: response
비동기 작업 완료

deferred.done() 메서드를 사용하면 비동기 작업의 성공 여부를 감지하고 적절한 후속 작업을 수행할 수 있습니다. 이를 통해 비동기 작업의 완료를 감지하고 처리할 수 있습니다.