본문 바로가기

프론트엔드 면접 질문7

JavaScript 함수의 모든 것: 선언식, 화살표 함수, this, 실행 컨텍스트까지 자바스크립트(JavaScript)에서 함수는 가장 핵심적인 개념 중 하나입니다. 단순히 코드를 묶는 것이 아니라, 클로저, 스코프, this 바인딩, 실행 컨텍스트 등과도 밀접한 연관이 있습니다. 특히 ES6 이후 도입된 화살표 함수(Arrow Function)는 문법이 간결할 뿐 아니라 this 바인딩 방식에서도 중요한 차이를 가지며, 면접에서도 자주 출제되는 주제입니다. 이 글에서는 함수의 정의부터 function 선언식과 화살표 함수의 차이, 실행 컨텍스트와 this, 그리고 실무와 면접 대응 전략까지 학습 흐름에 맞춰 정리합니다.JavaScript에서 함수란 무엇인가?함수는 하나의 작업을 수행하는 코드의 묶음입니다. 자바스크립트에서 함수는 일급 객체(first-class object)이기 때문에 .. 2025. 5. 6.
반응형 웹을 위한 CSS 단위 가이드: px, em, rem부터 dvh까지 CSS 단위는 웹 페이지의 구성 요소의 크기, 간격, 위치를 정의하는 데 필수적인 요소입니다. 특히 반응형 웹에서는 다양한 화면 크기와 환경에 따라 적절한 단위를 선택하는 것이 사용자 경험을 좌우합니다. 이 글에서는 기본 픽셀 단위부터 상대 단위(em, rem), 뷰포트 단위(vw, vh), 그리고 최신 동적 단위(dvh, svh, lvh 등)까지 CSS의 주요 단위를 체계적으로 정리합니다. 각각의 단위가 어떤 상황에서 적합한지, 실무와 면접에서 어떤 기준으로 설명하고 선택해야 하는지를 모두 다룹니다.CSS 단위란? 종류와 분류 체계CSS 단위는 요소의 길이, 크기, 위치, 여백 등을 표현하기 위한 수단입니다. 주로 다음과 같이 분류됩니다:절대 단위: 실제 물리적인 크기를 기준으로 고정된 값 (예: px.. 2025. 5. 5.
웹 스토리지의 모든 것: 저장 방식, 비교, 실무 활용과 면접 전략 웹 스토리지는 클라이언트 측에서 데이터를 저장할 수 있는 다양한 기술을 의미하며, 사용자 경험을 향상시키고 서버 요청을 줄이는 데 중요한 역할을 합니다. 오늘날 대부분의 웹 애플리케이션에서는 localStorage, sessionStorage, Cookie뿐 아니라, 대용량 및 구조화 데이터를 위한 IndexedDB까지 활용됩니다. 이 네 가지 방식은 기능, 보안, 저장 방식, 브라우저 처리 방식에서 각각 다른 특성을 가지고 있으며, 실무와 면접 모두에서 명확한 이해가 필요합니다.웹 스토리지란 무엇인가? (개념과 기술 진화)웹 스토리지(Web Storage)는 브라우저가 클라이언트 측에서 데이터를 저장할 수 있도록 제공하는 기능입니다. 대표적인 저장 방식은 다음과 같습니다:localStorage: 브라우.. 2025. 5. 4.
CORS와 SOP 완전정리: React·Next·Spring 연동 가이드 CORS(Cross-Origin Resource Sharing)는 브라우저에서 발생하는 보안 정책인 SOP(Same-Origin Policy, 동일 출처 정책)를 우회하기 위한 메커니즘입니다. 프론트엔드와 백엔드를 분리해 개발하는 환경, 특히 React, Next.js와 Spring Boot를 함께 사용하는 구조에서는 CORS 문제가 매우 흔하게 발생합니다. 본 글에서는 SOP와 CORS의 개념, CORS 요청 흐름, 그리고 실무에서 발생하는 에러 사례 및 해결 전략을 구조적으로 정리합니다.SOP(Same-Origin Policy)와 CORS란 무엇인가?SOP(Same-Origin Policy)는 웹 브라우저의 보안 정책으로, 출처(origin)가 다른 리소스에 대한 접근을 제한합니다. 출처는 프로토콜,.. 2025. 5. 4.
프론트엔드 E2E 테스트: 개념, 도구, 실무 전략 정리 프론트엔드 개발이 점점 복잡해짐에 따라, 기능이 정상적으로 작동하는지 전체적인 사용자 흐름을 테스트하는 E2E(End-to-End) 테스트의 중요성이 더욱 강조되고 있습니다. 단순히 버튼 하나가 클릭되는지를 넘어서, 사용자 관점에서 실제 시나리오를 자동화로 점검하는 것은 서비스 품질과 유지보수성 모두에 영향을 줍니다. 이 글에서는 E2E 테스트의 개념, 대표적인 도구, 실무에서의 적용 방법과 면접 대응 전략까지 체계적으로 정리합니다.E2E 테스트란 무엇인가?E2E(End-to-End) 테스트는 시스템의 시작부터 끝까지 실제 사용자와 동일한 방식으로 기능을 검증하는 테스트 방식입니다. 예를 들어, 사용자가 로그인하고 상품을 장바구니에 담고 결제하는 과정을 브라우저를 통해 자동으로 테스트하는 것이 이에 해당.. 2025. 5. 4.
자바스크립트 싱글 스레드 동작 원리 정리 자바스크립트(JavaScript)는 대표적인 싱글 스레드(Single Thread) 언어입니다. 즉, 한 번에 하나의 작업만 처리할 수 있는 구조를 가졌습니다. 그럼에도 불구하고 브라우저 환경에서 동시적으로 여러 작업을 수행하는 것처럼 보이는 이유는 자바스크립트의 이벤트 루프(Event Loop)와 비동기 처리 모델 덕분입니다. 본 글에서는 자바스크립트가 싱글 스레드임에도 어떻게 논블로킹 방식으로 여러 작업을 효율적으로 처리하는지 그 원리를 설명하고, 실무와 면접 대비에 도움이 되는 개념 정리를 제공합니다.자바스크립트는 왜 싱글 스레드인가?자바스크립트는 초기 설계부터 UI와 사용자 입력을 안전하게 다루기 위해 싱글 스레드 모델로 만들어졌습니다. 스레드가 여러 개일 경우, DOM을 동시에 수정하면서 충돌이.. 2025. 5. 3.