Javascript 2

React 컴포넌트의 렌더링 중에 상태 업데이트를 트리거하면 안 된다

문제점로그인 인증을 구현하기 위해 아래와 같은 AuthGuard를 하나 만들고 Page Component에 감쌌습니다.import { useRouter } from "next/navigation";import { useAuth } from "./provider/AuthProvider";const AuthGuard = ({ children }) => { const auth = useAuth(); const router = useRouter(); if(!auth.authentication) { router.push('/login'); return null; } return {children};};그랬더니 아래와 같은 에러가 발생합니다.  React 컴포넌트..

개발일지 2024.11.18

JavaScript 콜 스택(Call Stack)

JavaScript Call Stack 이란?자바스크립트에서 콜 스택(call stack)은 함수 호출을 관리하는 구조로, 함수가 호출될 때마다 해당 함수가 콜 스택에 추가되고, 함수 실행이 완료되면 콜 스택에서 제거되는 "LIFO(Last In, First Out)" 방식의 데이터 구조입니다. 콜 스택의 주요 동작 원리는 다음과 같습니다:함수 호출 시 스택에 푸시(Push)자바스크립트 엔진이 특정 함수를 호출하면 해당 함수가 콜 스택에 추가됩니다. 이 함수가 실행 중이라면, 호출된 다른 함수도 콜 스택에 계속 추가됩니다.함수 종료 시 스택에서 팝(Pop)함수 실행이 끝나면 해당 함수는 콜 스택에서 제거됩니다. 이때 호출된 순서의 반대로, 마지막에 호출된 함수부터 차례로 종료됩니다.스택 오버플로(Stac..

CS 2024.11.09