티스토리 뷰

JavaScript

Ajax async

wldnjd2 2023. 1. 13. 15:29

동기 비동기에 대해서 정리하다가,

Ajax에 대해서 다시한번 공부하게 되었다.

맨날 사용할때 생각 없이 그냥썼는데,...

 

아래는 ajax의 예시이다

 

 

async: true라고 되어있는 것을 볼 수 있다.

async: true -> 비동기 통신
async: false -> 동기 통신
(기본값은 true임)

 

첨에는 ajax는 비동기 통신인데 왜? 동기통신으로 사용하지 라고 생각을 했는데

 

결론 ===

false로 해놓으면 동기 통신으로 ajax에서 데이터를 가져올때 시간이 보장이 되는것이다.

true로 해놓으면 비동기 통신으로 ajax에서 데이터를 가져올때 시간이 좀 걸려서 데이터를 가져오기 전에 로직을 타버려서 데이터가 안가져오는 경우가 있다고 한당

 

 

 

 

Ajax 사용하는 이유

시간낭비, 자원낭비 방지하기 위해서

모를땐 디버거를 타보자

 

위의 디버거를 예로 들면 async: true이므로 비동기 상태 이다

ajax에서 success 안에 디버그를 하나 찍고!

F10 눌렀을때 success를 안타고 console.log("test"); 로 가버림

=== ajax 끝내기 전에 로직을 먼저탄당.

 

반대로 async: false를 하면 동기상태이므로 

console.log 안타고, success 안에 디버그 탄당

 

 

디버거 없이 몬사라~

 

 

 

 

Ref.

https://99geo.tistory.com/65

 

AJAX란 무엇인가 ?

AJAX (Asynchronous Javascript And XML) AJAX란, JavaScript의 라이브러리중 하나이며 Asynchronous Javascript And Xml(비동기식 자바스크립트와 xml)의 약자이다. 브라우저가 가지고있는 XMLHttpRequest 객체를 이용해서 전

99geo.tistory.com

https://simuing.tistory.com/entry/jQuery-jqZHR-%EB%9E%80-ajax-async-true-false-%EC%B0%A8%EC%9D%B4

 

jQuery #jqXHR 란? / ajax async true false 차이

jQuery.ajax() async async : true = 비동기 (Asynchronous, 요청을 보낸 후 응답결과와는 상관없이 다음방식이 동작하는 방식) async : false = 동기 (Synchronous, 요청을 보낸 후 응답결과를 받아야지만 다음 동작이

simuing.tistory.com

 

 

'JavaScript' 카테고리의 다른 글

자바스크립트 for문 (for...in, for...of)  (0) 2023.09.27
JSON, parse, stringify  (0) 2023.01.12
자바스크립트 사용했던것 정리  (0) 2023.01.10
자바스크립트 sort()  (0) 2023.01.02
댓글