오늘부터 여지까지 공부했던 내용들을 토대로 조금씩 프론트엔드 개발 기술면접 대비를 해보려고 한다. 아직 공부한 내용은 많지 않지만, 내가 공부했던 내용들 중에서 좀 더 보충해야 되는 부분이 있다면 내용을 보강해서 진행해보도록 하겠다.
알고 있는 내용이라고 하더라도 막상 누군가로부터 질문을 받게 되면 제대로 대답을 못하게 되는게 일반적이라 평소에 조금씩 꾸준하게 준비해두려고 한다.
면접 예상 질문은 구글링을 한 내용을 참고하였으며, 여지까지 공부했던 내용들과 가장 기본이 되는 내용들을 위주로 질문을 선별해서 작성하였다.
## interview Q1. 호이스팅(Hoisting)에 대해서 설명하세요.
## interview Q2. 이벤트 버블링(Event bubbling)에 대해서 설명하세요.
## interview Q2-1. 이벤트 위임에 대해서 설명하세요.
## interview Q3. document load 이벤트와 document DOMContentLoaded 이벤트의 차이점에 대해서 설명하세요.
## interview Q3-1. 왜 load 이벤트를 사용했나요? 그 이유를 설명하고 이 이벤트를 사용함으로써 생기는 단점에 대해서 설명하세요. 그리고 다른 대안을 알고 있다면 설명을 하고 왜 그 대안을 사용할 건지에 대해서 설명하세요.
## interview Q4. ==
와 ===
의 차이점에 대해서 설명하세요.
## interview Q5. 100까지 증가하면서 3의 배수에는 fizz를 출력하고, 5의 배수에는 buzz를 출력하고, 3과 5의 배수에는 fizzbuzz를 출력하는 for loop를 손코딩하고 설명하세요.
## interview Q6. 웹 사이트의 전역 스코프를 그대로 두고 건드리지 않는 것이 좋은 이유와 방법에 대해서 설명하세요.
## interview Q7. Promise와 그 Polyfill에 대해서 알고 있는대로 설명하세요.
## interview Q8. Callback 대신에 Promise를 사용할 때의 장점과 단점에 대해서 설명하세요.
## interview Q9. JavaScript 코드를 디버깅 하기 위해서 어떤 도구와 기술을 사용해봤는지 설명하세요.
## interview Q10. function foo() {}
와 var foo = function() {}
사이에서 foo 사용의 차이점에 대해서 설명하세요.
## interview Q11. let
,var
,const
를 사용하여 생성된 변수들의 차이점에 대해서 설명하세요.
## interview Q12. 화살표 함수 문법에 대한 사용예시를 들고, 다른 함수와는 어떤 차이가 있는지 설명하세요.
## interview Q13. 생성자 함수의 메서드에 화살표 문법을 사용하면 어떤 이점이 있는지 설명하세요.
## interview Q14. 고차 함수(Higher-Order Function)에 대해서 설명하세요.
## interview Q15. 객체나 배열에 대한 destructuring에 대해 예시를 들고 설명하세요.
## interview Q16. spread 문법을 사용할때의 이점은 무엇이며 rest 문법과 다르점은 무엇인지 설명하세요.
## interview Q17. 정적 클래스 멤버를 만드는 이유는 무엇인지 설명하세요.
## interview Q18. this
가 JavaScript에서 어떻게 동작하는지 설명하세요.
## interview Q19. 클로저는 무엇이며 어떻게 사용하며 왜 사용을 해야 되는지 설명하세요.
## interview Q20. 익명 함수의 일반적인 사용 사례는 무엇인지 설명하세요.
## interview Q21. .call
과 .apply
그리고 ‘.bind’의 차이점에 대해서 설명하세요.
## interview Q22. 데이터 바인딩 (단방향 바인딩, 양방향 바인딩)에 대해서 설명하세요.