분류 전체보기192 [Javascript] 자바스크립트 변수 선언, 스코프, TDZ, 호이스팅, 스코프 체인, 클로저 총정리 ✅ 1. 변수 선언 방식과 스코프자바스크립트에서는 변수를 var, let, const로 선언하며 각각의 스코프(Scope)와 호이스팅(Hoisting), TDZ(Temporal Dead Zone) 특징이 다릅니다.선언 키워드스코프재선언재할당호이스팅TDZvar함수(function)OO선언+초기화❌ 없음let블록(block)❌O선언만 호이스팅✅ 있음const블록(block)❌❌선언만 호이스팅✅ 있음✅ 2. 호이스팅(Hoisting)이란?호이스팅은 변수나 함수 선언이 스코프의 최상단으로 끌어올려지는 현상console.log(a); // undefinedvar a = 5;var a 선언이 위로 올라감내부적으로는 다음처럼 작동:var a;console.log(a); // undefineda = 5;🔹 let/c.. 2025. 4. 3. [Database] FROM DUAL 구문 FROM DUAL은 Oracle 데이터베이스에서 자주 사용되는 구문으로, 테이블이 필요 없는 단일 값의 연산이나 함수를 테스트하거나 간단한 쿼리를 실행할 때 사용합니다.🔷 1. DUAL이란?DUAL은 Oracle에서 임시로 사용하는 1행짜리 가상 테이블입니다.실제 테이블이지만, 시스템에 기본적으로 존재합니다.컬럼은 오직 하나: DUMMY라는 이름의 VARCHAR2(1) 타입행은 단 하나: XSELECT * FROM DUAL;결과:DUMMY-----X🔷 2. 왜 FROM DUAL을 사용하나?👉 테이블 없이 단일 값을 반환하고 싶을 때 사용예를 들어, 단순한 산술 연산이나 함수 결과를 확인할 때:SELECT 1+1 FROM DUAL;-- 결과: 2SELECT SYSDATE FROM DUAL;-- 결과:.. 2025. 4. 3. [OS] vi 편집기 자주 사용하는 키 정리 🧭 vi 편집기 자주 사용하는 키 정리 (모드별)vi는 3가지 모드로 구성됩니다:기본 모드 (Normal Mode): 이동, 복사, 삭제 등 명령 실행 입력 모드 (Insert Mode): 실제 텍스트 입력 명령어 모드 (Command Mode): 저장, 종료, 파일 제어 등 1️⃣ 기본 모드 (Normal Mode)vi 실행 직후 진입하는 기본 상태입니다.커서 이동, 삭제, 복사, 붙여넣기 등 대부분의 작업을 수행합니다.🔹 커서 이동키설명h / l왼쪽 / 오른쪽 이동j / k아래 / 위 이동0줄 맨 처음으로 이동^줄의 첫 글자 위치로 이동$줄 끝으로 이동w / W다음 단어 시작으로 이동 (W: 공백 기준)b / B이전 단어 시작으로 이동e / E현재 또는 다음 단어 끝으로 이동gg문서 맨 처음.. 2025. 4. 3. [Java] Composition vs Inheritance — 언제 써야 하나? 🧠 Composition vs Inheritance — 언제 써야 하나?✅ 1. 기본 개념 정리📌 Inheritance (상속)"is-a" 관계일 때 사용한 클래스가 다른 클래스의 필드와 메서드를 상속받아 확장계층 구조를 형성하며 코드 재사용에 유리class Animal { void eat() { System.out.println("eating..."); }}class Dog extends Animal { void bark() { System.out.println("bark!"); }}✅ Dog is-a Animal → 올바른 상속📌 Composition (구성)"has-a" 관계일 때 사용클래스 내부에 다른 클래스의 인스턴스를 필드로 포함시켜 사용상속보다 유연하며, 역할 분리와 기능 조.. 2025. 4. 2. [Java] Java에서 배열 생성과 객체 생성의 차이 정리 ✅ 핵심 요약Student[] students = new Student[10];🔹 배열 객체를 생성한 것 (크기 10짜리)🔹 아직 Student 객체는 하나도 존재하지 않음🔹 내부에는 null 값이 10개 들어 있음students[0] = new Student();🔹 진짜로 Student 객체를 생성해서 배열의 첫 번째 칸에 넣는 것✅ 1. 배열 생성: new는 "공간"만 만든다Student[] students = new Student[3];students는 참조형 배열이며,내부에는 Student 객체가 아닌 null이 3개 들어 있음:students = [null, null, null]즉, "객체를 담을 수 있는 칸만 만든 상태"이고,각 칸에 실제 객체를 넣으려면 따로 new 해야 함.✅ 2. .. 2025. 4. 2. [MySQL] SELECT 절의 처리 순서 SELECT 절의 처리 순서MySQL에서 SELECT 쿼리는 우리가 작성한 순서대로 실행되지 않고, 내부적으로는 다음과 같은 순서로 처리됩니다.✅ SELECT 절의 처리 순서 (논리적 처리 순서, Logical Query Processing Order)처리 순서절설명1FROM테이블/뷰를 로딩2ON조인 조건을 적용 (JOIN 사용 시)3JOIN실제 조인 수행4WHERE로우(행) 필터링 – 그룹 이전5GROUP BY지정된 컬럼 기준으로 그룹핑6WITH CUBE / ROLLUP집계 연산 보조 옵션 (선택 사항)7HAVING그룹핑 결과 필터링8SELECT반환할 컬럼 및 표현식 선택9DISTINCT중복 제거10ORDER BY결과 정렬11LIMIT결과 개수 제한 (OFFSET 포함 가능)1. 🔍 SELECT 절의.. 2025. 4. 1. 이전 1 2 3 4 ··· 32 다음