
자바스크립트에서 함수는 코드를 모듈화하고 재사용 가능한 블록으로 만들어주는 기본적인 구성 요소입니다. 함수는 특정 작업을 수행하거나 값을 반환할 수 있습니다.
함수 정의하기
function myFunction(parameter1, parameter2) { // 함수 내용 return result; // 값을 반환할 수 있음 }
함수 호출하기
var result = myFunction(value1, value2);
익명 함수 (Anonymous Functions)
익명 함수는 이름이 없는 함수로, 주로 콜백 함수로 사용됩니다.var myFunction = function(parameter) { // 함수 내용 };
화살표 함수 (Arrow Functions)
ES6부터 도입된 간단한 함수 표현식입니다.var myFunction = (parameter) => { // 함수 내용 };
스코프는 변수와 함수의 유효 범위를 나타냅니다. 자바스크립트에서는 두 가지 주요 스코프가 있습니다.
글로벌 스코프 (Global Scope)
글로벌 스코프에서 정의된 변수는 어디서든 접근할 수 있습니다.var globalVariable = 10; function myFunction() { console.log(globalVariable); // 접근 가능 }
지역 스코프 (Local Scope)
지역 스코프에서 정의된 변수는 해당 스코프 내에서만 접근할 수 있습니다.function myFunction() { var localVariable = 20; console.log(localVariable); // 접근 가능 } console.log(localVariable); // 에러: localVariable은 정의되지 않음함수 내부에서 선언된 변수는 함수 내에서만 유효하며, 블록 스코프를 지원하기 위해 let과 const 키워드도 사용됩니다.
function myFunction() { if (true) { var variableWithFunctionScope = "Function Scope"; let variableWithBlockScope = "Block Scope"; // 블록 스코프 } console.log(variableWithFunctionScope); // 접근 가능 console.log(variableWithBlockScope); // 에러: 블록 스코프에서 접근 불가능 }