1. 함수 (Function)
자바스크립트에서 함수는 특정 작업을 수행하도록 설계된 코드 블록입니다. 함수는 코드의 재사용성을 높이고, 가독성을 향상시키며, 유지보수를 쉽게 만들어주는 중요한 프로그래밍 요소입니다.
1-1) 함수 선언문 (Function Declaration)
호이스팅(hoisting)이 적용되어 함수 선언 이전에도 호출 가능합니다.
function add(a, b) { return a + b; }
1-2) 함수 구성요소
function greet(name = 'Guest') { // 기본값 설정 가능 return `Hello, ${name}!`; } console.log(greet('Alice')); // Hello, Alice! console.log(greet()); // Hello, Guest!
함수명(Function name): -> greet
매개변수(Parameter): 함수 정의 시 입력값을 받는 변수입니다. -> name
인수(Argument): 함수 호출 시 전달되는 실제 값입니다. -> Alice
반환값(Return Value): return 키워드를 통해 호출자에게 결과를 반환할 수 있습니다. -> Hello, ${name}!
1-3) 함수 표현식 (Function Expression)
자바스크립트 함수는 객체 타입의 값이다.
따라서 함수도 함수 리터럴로 생성할 수 있다.
호이스팅되지 않으며, 변수 선언 이후에만 호출 가능합니다.
const multiply = function(a, b) { return a * b; };
1-4) 화살표 함수 (Arrow Function)
ES6에서 도입된 간결한 문법으로, function 키워드 대신 =>를 사용합니다.
this가 상위 스코프를 따르며, prototype이 없습니다.const multiply = function(a, b) { return a * b; };