function loadScript(src, callback) {
let script = document.createElement('script');
script.src = src;
script.onload = () => callback(script);
console.log("1");
document.head.append(script);
}
loadScript("./app.js", script => {
console.log("2");
});
// ==================
// 1
// 2
script.onload가 비동기로 함수를 호출하는건가요?
setTimeout과 똑같이 봐도 상관없을까요?
온로드는 스크립트가 로드되면 온로드를 실행하도록 되어있는 거고 셋 타입아웃도 시간이 되면 타임아웃을 실행하는 거니 비슷하다고 볼 수 있음.
onload는 이벤트 등록하는거임 저거는 편의로 재공하는건데 풀어서보면 script.addEventListener("load",() => callback(script)); 로봐야해서 같지않음 - whatever we can do it
셋타임아웃은 타이머고 - whatever we can do it
대신 브라우저 taskJob으로 들어가는건 같긴함 - whatever we can do it