akjfal

프론트엔드(frontend) 면접 준비 - 자바스크립트(javascript) - 1 본문

면접 준비/frontend

프론트엔드(frontend) 면접 준비 - 자바스크립트(javascript) - 1

akjfal 2021. 1. 18. 00:44

아직 공부하면서 작성중이기 때문에 오류가 보이거나 추가적으로 조언해주고 싶은 내용은 댓글 부탁드립니다.
자세한 개념에대한 설명글이 아닙니다. 따라서 답변이나 최소한의 설명만 적었습니다. 면접시 답변을 위한 정리이므로 자세한 설명은 따로 검색을 해주세요.


javascript 관련

  1. 스코프 체인(scope chain)에 대해서 설명해보세요.

    • **답변 : 변수를 참조하기위해 자신의 스코프에서 찾고, 없으면 한 단계위로해서 범위를 넓히며 찾는 관계를 말한다.
  2. 렉시컬 스코핑(lexical scoping)에 대해서 설명해보세요.

    • **답변 : 스코프는 함수를 호출이 아닌 선언할 때 생기는 것을 말한다.
  3. 호이스팅(Hoisting)에 대해서 설명해보세요

    • **답변 : 변수가 함수 내에서 정의되었을 경우 선언이 함수의 최상위로, 함수의 바깥에서 정의되었을 경우 전역의 최상위로 변경이 되는것을 말한다.
  4. 컨텍스트에 대해서 설명해보세요.

    • **답변 : 전역과 함수 컨텍스트가있으며, 안에 arguments, variable, scope chain, this가 생성되며, 함수 실행이 완료되면 컨텍스트는 사라집니다.
  5. 자유 변수에대해서 설명해보세요.

    • **답변 : 매개변수도 아니며, 내부에서 선언한 변수가 아닌데 사용되는 변수입니다.
  6. 클로저(Closure)에 대해서 설명해보세요.

    • **답변 : 함수 컨텍스트가 생성되면, 그 컨텍스트 안의 스코프 체인을 통해서 비공개 변수를 변환시키는 방법
    • MDN closure
    • 클로저
  7. 생성자(constructor)에 대해서 설명해보세요.

    • **답변 : new라는 키워드로 호출하며 다른 언어의 class역할을 합니다.
  8. 프로토타입(prototype)에 대해서 설명해보세요.

    • **답변 : 생성자 함수에 정의한 모든 객체가 공유하는 원형입니다.
  9. arguments에 대해서 설명해보세요.

    • **답변 : 함수 호출시 넘긴 인자들이 배열형태로 저장된 객체입니다.
  10. this에 대해서 설명해보세요.

    • **답변 : 기본적으로 window를 가르키고, new를 사용하면 생성자를 통해 생성된 자신을 가르키고, 화살표함수를 사용시 상위 함수의 this를 가져옵니다.
    • this
Comments