안녕하세요 선생님!
동기/비동기처리와 콜백함수라는 용어 깔끔하게 정리 강의를 보는데 이해가 안되는 부분이 있어서요!
console.log(1);
setTimeout(()=> {console.log(2)},1000); //멈추지 않고 3이 실행됨
console.log(3);
자바스크립트에서는 1 3 2 이렇게 콘솔에 찍힌다고 설명하셨는데
자바스크립트를 멈췄다가 순차적으로 실행하려면 콜백함수를 사용하라고 설명하시면서
console.log(1);
setTimeout(()=> {console.log(2)},1000);
이 코드중 ()=> {console.log(2)} 이게 콜백함수라고 하셨는데,
저 코드 다음줄에 console.log(3); 이걸 붙이면 위랑 똑같이 1 3 2 가 콘솔에 찍힐텐데
왜 콜백함수가 멈췄다가 순차적으로 실행한다는 건지 잘 이해가안됩니다!
console.log(3); 를 다음줄에 붙이지말고
()=> {console.log(2)} 이 안에(콜백함수안에) 코드를 작성해서 넣어야 순차적으로 실행할수 있다는
뜻인가요????
그리고, 자바스크립트랑 파이썬이랑 비교해서 보여주셨는데
파이썬은 동기식처리만 이루어지는 언어고
자바스크립트도 동기식처리 언어지만 Web API와 연관된 특수한 함수들을 쓰면 비동기식 처리도 가능하다 이렇게 이해했는데 맞나요??
개념이 너무 어려워요 ㅠㅠ