JavaScript
변수, 클로저, 프로토타입, 비동기 프로그래밍 등 JavaScript 핵심 개념
프론트엔드 기술 면접을 위한 종합 핸드북입니다. 면접관들이 순서대로 질문하지는 않지만, 연관된 개념들을 순서대로 정리하면 모르는 개념을 파악하고 한눈에 보는데 도움이 됩니다.
① JS > ② CS > ③ React > ④ HTML/CSSCLAUDE CODE와 협업하여 이 핸드북을 개선한 실제 과정을 담은 가이드입니다.
대상: 프롬프트 엔지니어링을 처음 접하는 개발자 난이도: 초급 ~ 중급 소요 시간: 약 20-30분
💡 AI를 활용한 문서 작업, 코드 리뷰, 리팩토링 등에 관심 있는 분들께 추천합니다!
① 클론 받기 / 포크 받기
$ git clone https://github.com/junh0328/prepare_frontend_interview.git② 내용 추가 또는 변경하기
ex)
- [타입과 인터페이스 🔥](#타입과-인터페이스) >>> [xxx](#xxx) 마크다운 구조
- 타입스크립트를 왜 쓰나요? (본인이 느낀점)
- 타입과 인터페이스의 차이를 아나요?
- 제네릭이란?③ 목차에도 해당 내용 추가하기
ex)
- `타입과 인터페이스 🔥` >>> 백틱 내부에 제목 그대로 표시 `xxx`
- 타입스크립트를 왜 쓰나요? (본인이 느낀점)
- 타입과 인터페이스의 차이를 아나요?
- 프로젝트 진행 시에 어떤 상황에서 타입을 쓰고 어떤 상황에서 인터페이스를 썼나요?④ 이슈 생성 및 PR 날리기
예시 이슈: (https://github.com/junh0328/prepare_frontend_interview/issues/6)
템플릿을 작성해 두었으니, 해당 예시 이슈에 맞춰 작성해주시면 됩니다!네트워크 🔥
HTTP 🔥
운영체제 🔥
프로세스와 스레드 🔥
싱글 스레드와 멀티 스레드 🔥
공유 자원 임계 영역 교착 상태 🔥
쿠키 세션 🔥
CORS 🔥
개발 방법론 🔥
Cache 🔥
CDN 🔥
테스트 🔥
웹팩 🔥
타입과 인터페이스 🔥🔥🔥
DOCTYPE 🔥
웹 표준 및 웹 접근성 🔥
그 외 🔥
SVG란 ? 🔥
display 🔥
position에 대하여 설명해보세요. 🔥
float가 어떻게 작동하는가 🔥
Flexbox나 Grid 스펙을 사용해본 적이 있나요 ? 🔥
이미지 태그를 스타일로 대체하는 법 🔥
반응형 웹의 3요소 🔥🔥
CSS selector가 어떠한 원리로 동작하나요? 🔥
반응형웹과 적응형웹에 설명하시오 🔥
PX, EM에 대해 설명하시오 🔥🔥
CSS 적용 우선순위 🔥🔥
CSS-in-JS에 대해서 설명해 주세요. 🔥
CSS 전처리기(CSS preprocessors)를 사용해보셨나요? 🔥
padding과 margin의 차이가 무엇인가요? 🔥
프로그래밍 🔥
자바스크립트란 🔥
변수 🔥
데이터 타입 🔥
타입변환과 단축 평가 🔥
배열 🔥
객체 리터럴 🔥
원시 값과 객체 비교 🔥
함수 🔥
스코프 🔥
생성자 함수에 의한 객체 생성 🔥
함수와 일급 객체 🔥
Map과 Set 그리고 Lookup Table
프로토타입 🔥
strict mode 🔥
빌트인 객체 🔥
this 🔥
실행 컨텍스트 🔥
클로저 🔥
클래스 🔥
스프레드 문법 🔥
구조 분해 할당 🔥
브라우저 렌더링 과정 🔥
<script></script> 태그를 <body></body> 태그 밑에 둬야하는 이유가 있을까요?DOM 🔥
이벤트 🔥
타이머 🔥
비동기 프로그래밍 🔥
동기와 비동기의 차이점에 대해서 설명해줄 수 있나요? 🔥🔥
이벤트 루프와 태스크 큐에 대해서 알고 있나요? 🔥🔥🔥
마이크로태스크 큐에 대해서 알고 있나요? 🔥🔥
태스크 큐와 마이크로태스크 큐 중 어떤 것이 먼저 실행되나요? 🔥🔥
Ajax 🔥
REST API 🔥
Promise 🔥
제너레이터와 async await 🔥
에러 🔥
모듈 🔥
가비지 컬렉션 🔥
React 시작🔥
리액트는 라이브러리인가요 프레임워크 인가요?🔥
리액트를 사용하는 이유🔥🔥
virtual DOM에 대해서 아나요?🔥🔥
리액트의 렌더링에 대해 아나요?
리액트 파이버에 대해서 아나요?
리액트 파이버 트리
리액트 파이버와 DOM, Virtual DOM의 관계
렌더 단계와 커밋 단계에 대해 아나요?
React에서 함수 컴포넌트와 클래스 컴포넌트의 차이 🔥
리액트에서 함수형 컴포넌트라고 부르지 않고 함수 컴포넌트라고 부르는 이유가 무엇인가요 🔥
props와 state의 차이🔥
Props가 컴포넌트간에 전달받는 것이라고 했는데 자식에서 부모로도 전달할 수 있는가 🔥
FLUX에 대해서 아나요? 🔥🔥
리덕스에 대해서 아나요? 🔥🔥
리덕스의 기본 원칙은? 🔥🔥
React에서 state의 불변성을 유지하라는 말이 있는데 이에 대해 설명해달라 🔥
리듀서 내부에서 불변성을 지키는 이유는? 전개 연산자의 단점을 해결할 수 있는 방법은 무엇인가 🔥
리액트 사용시에 부수효과로 인해 생기는 문제점이 있다면 🔥🔥
컴포넌트의 라이프 사이클 메서드 🔥🔥
Hooks의 종류 🔥🔥
useMemo와 useCallback의 차이를 아나요 🔥🔥
리액트에서 setState는 비동기 동작인가요 동기 동작인가요? 🔥
setState가 비동기 동작을 취했을 때 얻을 수 있는 이점은 무엇인가요? 🔥
useLayoutEffect는 무엇인가요? 🔥
리액트의 성능개선 방법에 대해서 설명해주세요
컴포넌트에서 이벤트를 실행시키기 위해서는 어떻게 핸들링해야 하나요?🔥
SPA가 뭔가요?🔥
SSR이 뭔가요?🔥
SEO가 뭔가요?🔥
서버사이드 렌더링을 지원하기 위한 리액트 API를 알고 있나요 ?
하이드레이션에 대해 알고 있나요 🔥
Next의 렌더링 수행 방식 🔥
Next를 쓴 이유가 있나요 ? 🔥
Next를 구성하는 기본 설정 파일에 대해서 알고 있나요? 🔥
사전 렌더링을 위해 사용해 본 함수가 있나요 🔥
Suspense 🔥
웹 성능 최적화
LCP가 뭔가요?
FCP가 뭔가요?
controlled pattern에 대해서 아나요?
uncontrolled pattern에 대해서 아나요?
자료구조란 무엇인가요 🔥
대표적인 자료구조는 어떤 것들이 있나요 🔥
리스트 🔥
큐 🔥
스택 🔥
링크드 리스트 🔥
해쉬 테이블 🔥
트리 🔥
힙 🔥
그래프 🔥
Frequency CountersMultiple PointersSliding WindowDivide and conquerRecursionLinear SearchNaive String SearchBinary SearchBubble SortSelection SortInsertion SortMerge SortQuick SortSingle Linked ListDobule Linked ListStackQueueBinary Search TreeBreadth First SearchDepth First SearchBinary HeapPriority QueueHash TablegraphDijkstraDynamic Programming