# TDZ (Temporal Dead Zone) ## 개요 **TDZ**(Temporal Dead Zone, 시간적 사각지대)는 JavaScript에서 `let`과 `const` 키워드로 선언된 변수가 **선언되기 전에 접근할 수 없는 구간**을 의미하는 개념입니다. 이는 기존의 `var` 키워드와는 다른 동작 방식으로, 변수의 **호이스팅**(hois...
검색 결과
"스코프"에 대한 검색 결과 (총 33개)
# ES6: 자바스크립트의 혁신적인 진화 ECMAScript 6(ES6), 공식 명칭은 ECMAScript 015는 자바스크RIPT의 중대한 업데이트 버전으로, 2015년 6월에 공식 발표되었습니다. 이 버전은 그 이전의 ES5(2009년) 이후 가장 큰 변화를 가져왔으며, 자바스크립트의 문법과 기능을 대폭 개선하여 더 직관적이고 효율적인 코드 작성을 가...
# 호이스팅 ## 개요 **호이스팅**(Hoisting)은 JavaScript의 컨텍스트 생성 단계에서 변수와 함수의언을 해당 스코프의 최상단으로 "끌어올리는" 것처럼 동작하는 특수한 메커니즘을 의미합니다. 이 개념은 JavaScript의 동작 방식을 이해하는 데 매우 중요하며, 특히 변수 선언과 초기화의 시점이 다를 경우 예기치 않은 동작을 유발할 수...
# 변수 가시성 JavaScript에서 **변수 가시성**(Variable Visibility은 특정 변수가의 어느 부분에서 접근 가능하고 사용될 수 있는 결정하는 중요한 개념이다 변수의 가시성은가 어디서 선되었는지, 그리고 어떤 스코프(scope)에 속해 있는지에 따라 달라진다. 이 문서에서는의 변수 가시에 대해 깊이 있게 다루, `var`, `let`...
# 스코프 체인 (Scope Chain) JavaScript는 변수와 함수의 접근 범위를 결정하기 위해 **스코프(Scope)**라는 개념을 사용하며, 이 스코프를 따라 변수를 찾는 과정을 **스코프 체인(Scope Chain)**이라고 합니다. 스코프 체인은 JavaScript의 실행 컨텍스트(Execution Context)와 밀접하게 연결되어 있으며...
# SOLID **SOLID**는 객체지향 소프트웨어 설계에서 코드의 유지보수성, 확장성, 재사용성을 높이기 위해 제안된 다섯 가지 핵심 원칙의 집합입니다. 이 원칙들은 소프트웨어 개발자 로버트 C. 마틴(Robert C. Martin)에 의해 정립되었으며, 각각의 이니셜을 따서 "SOLID"라는 이름이 붙여졌습니다. SOLID 원칙은 객체지향 프로그래밍...
```markdown # 프로토타입 기반 상속 ## 개요 JavaScript는 **클래스 기반**이 아닌 **프로토타입 기반** 상속을 사용하는 언어입니다. 이는 객체 지향 프로그래밍의 다른 접근 방식으로, 모든 객체가 **프로토타입(prototype)**이라는 다른 객체를 참조하며, 해당 객체의 속성과 메서드를 상속받는 구조입니다. 프로토타입 기반 상속...
# JavaScript 일급 함수 ## 개요 JavaScript에서 **일급 함수**(First-class Function)는 함수가 프로그래밍 언어의 기본 자료형으로 취급되는 특성을 의미합니다. 이는 함수를 변수에 할당하거나, 다른 함수의 인자로 전달하거나, 함수에서 반환할 수 있는 기능을 포함합니다. 이러한 특성 덕분에 JavaScript는 함수형 프...
```markdown # 화살표 함수 (Arrow Function) ## 개요 화살표 함수(Arrow Function)는 **ECMAScript 2015**(ES6)에 도입된 새로운 함수 표현 방식으로, 기존 함수 표현식의 단점을 보완하고 더 간결한 문법을 제공합니다. 특히 `this` 키워드의 렉시컬(lexical) 바인딩과 간결한 구조로 인해 콜백 함...
# JavaScript 제어 구조 ## 개요 JavaScript의 **제어 구조(Control Structures)**는 프로그램 실행 흐름을 조절하는 핵심 문법입니다. 조건에 따라 코드 블록을 실행하거나 반복적으로 작업을 수행할 때 사용되며, 논리적인 흐름을 구현하는 데 없어서는 안 될 요소입니다. 본 문서에서는 JavaScript에서 제공하는 주요 제...
# 반복문 ## 개요 ### 반복문이란? 반복문(Loop)은 프로그래밍에서 특정 코드 블록을 **조건이 만족할 때까지 반복 실행**하는 제어 구조입니다. JavaScript에서는 다양한 반복문 구문을 제공하여 배열, 객체, 이터러블(iterable) 등의 데이터를 효율적으로 처리할 수 있도록 지원합니다. ### JavaScript에서의 역할 JavaS...
# 변수 ## 개요 JavaScript에서 **변수(Variable)**는 데이터를 저장하고 참조하기 위한 기본적인 수단입니다. 변수는 동적 타이핑(Dynamic Typing)을 특징으로 하며, 선언 방식(`var`, `let`, `const`)에 따라 스코프(Scope)와 호이스팅(Hoisting) 동작이 달라집니다. 본 문서에서는 변수의 선언 방법, ...
# JavaScript JavaScript는 웹 개발의 핵심 언어로, 동적 프로그래밍과 상호작용을 가능하게 하는 고급 스크립트 언어입니다. 1995년 넷스케이프(Netscape)의 브렌던 아이크(Brendan Eich)에 의해 개발되었으며, 현재는 ECMAScript 표준을 기반으로 웹 브라우저와 서버 측(Node.js) 모두에서 사용됩니다. --- ...