두 속성을 "비동기" 정도로 묶어 아는지, 실행 시점·순서 보장 차이까지 잡고 _상황별 선택 기준_을 말할 수 있는 사람인지를 가른다.
async와 defer는 스크립트를 HTML 파싱과 _병렬로 다운로드_한다는 공통점이 있다. async는 다운로드가 끝나는 순간 즉시 실행되어 문서 작성 순서를 보장하지 않고 실행 중 파싱이 잠시 멈춘다. defer는 문서 파싱이 끝난 뒤 DOMContentLoaded 직전에 문서에 적힌 순서대로 실행된다. 그래서 분석·광고처럼 다른 스크립트에 영향이 적은 코드는 async, 순서·의존성이 있는 메인 앱 번들은 defer가 일반적이다.
async 스크립트가 메인 번들보다 먼저 떠서 전역 변수가 비어 있던 버그를 만난 적이 있다면 그 케이스를 그대로 답변 후크로 쓸 수 있다
서드파티 분석/광고 스크립트를 async로 격리해 렌더 차단을 줄인 경험이 있다면 선택 기준으로 연결할 수 있다
module 스크립트로 갈아끼우며 defer 동작을 활용한 경험이 있다면 자연스럽게 깊이 있는 답이 된다
아직 공개된 답변이 없어요. 첫 공개 답변을 남겨보세요.