2025년 6월 18일 수요일(16일차)

Jeonghoon·2025년 6월 18일

jeonghoon's Study

목록 보기
17/128

⚙️ [ JavaScript 함수(Function) & 지역변수(Variable Scope) 정리 ]


🧠 [ 함수(Function) ]

특정한 {} 안에 미리 정의된 코드 블록
→ 반복적인 동작을 효율적으로 재사용하기 위한 구조


📘 정의 및 목적

구분설명
🧩 정의{} 안에 미리 정의된 코드의 집합
🎯 목적미리 정의된 코드를 재사용하여 효율성과 편의성 향상

🔁 변수 vs 반복문 vs 함수

구분설명
💾 변수값(데이터)을 저장하여 재사용
🔄 반복문특정 조건에 따라 코드를 반복 실행
⚙️ 함수미리 정의된 코드를 필요할 때마다 재사용

🧱 함수의 종류

종류설명예시
📦 라이브러리 함수자바스크립트에 기본 내장된 함수console.log(), .push(), .splice()
✍️ 정의 함수 (사용자 정의)개발자가 직접 작성한 함수function add(){ ... }

🧮 JS 함수 표현 방식

형태문법설명
🧾 선언적 함수function 함수명(){ }일반적인 함수 정의 방식
🕶️ 익명 함수function(){ }이름 없이 변수에 할당 가능
람다식(화살표 함수)( ) => { }간결한 함수 표현식

🧩 선언식 함수 구조

구성 요소설명
🔑 function함수를 선언하는 키워드
🧠 함수명함수 이름 (카멜 표기법 권장: camelCase)
📥 매개변수( )함수 내부로 전달되는 데이터 저장 변수
🧱 { }실행 코드 블록
🔁 return함수 종료 후 반환값을 호출 위치로 전달
function add(a, b){
    return a + b;
}
let result = add(5, 7);
console.log(result); // 12

🧮 함수 호출 방법

구분문법설명
매개변수 없음함수명();단순 실행
매개변수 있음함수명(값1, 값2);인자를 전달하여 실행

💡 함수 선언 시 고려사항

1️⃣ 매개변수는 무엇인가?
2️⃣ 반환값(return) 은 무엇인가?
3️⃣ 처리할 명령어는 무엇인가?

✅ 이 세 가지를 명확히 구상하고 함수를 설계하자!


🌍 [ 지역변수 (Local Variable) ]

특정 {} 블록 내부에서만 유효한 변수
블록이 종료되면 메모리에서 자동 소멸 (가비지 컬렉터에 의해 처리)

🧱 개념

구분설명
🌐 전역변수(Global)코드 전체에서 접근 가능한 변수
🔒 지역변수(Local)특정 {} 안에서만 접근 가능한 변수

💡 예시 코드

let 전역변수 = '대한민국';

if (true) {
    let 지역변수1 = '인천광역시';
    console.log(전역변수);   // ✅ 가능
    console.log(지역변수1);  // ✅ 가능

    for (let i = 0; i < 1; i++) {
        let 지역변수2 = '부평구';
        console.log(전역변수);   // ✅ 가능
        console.log(지역변수1);  // ✅ 가능
        console.log(지역변수2);  // ✅ 가능
    }

    // console.log(지역변수2); ❌ 오류 — for문 블록 밖이라 사용 불가
}

// console.log(지역변수1); ❌ 오류 — if문 블록 밖이라 사용 불가
// console.log(지역변수2); ❌ 오류 — 존재하지 않음

0개의 댓글