자바스크립트 함수
일련의 처리 과정을 모아놓은 코드 블록
재사용성과 입력에 따른 출력을 제공
순수 함수는 같은 입력 값에 대해 항상 같은 출력을 반환하여 부작용이 없는 함수
부작용이란 외부 상태를 변경하거나 참조값을 수정하는 행위를 의미
함수 선언문과 화살표 함수의 차이
함수 선언문은 호출 방식에 따라 디스가 동적으로 결정됨
화살표 함수는 상위 렉시컬 스코프의 디스를 참조
화살표 함수는 디스 바인딩을 가지지 않고 상위 스코프의 디스를 고정적으로 참고하기 때문
화살표 함수는 생성자 함수로 사용할 수 없으며, 프로토타입이 없음
반면 함수 선언문은 생성자 함수로 사용 가능하며 프로토타입을 가짐
함수객체
자바스크립트의 함수는 1급 객체로, 변수에 할당되거나 다른 함수의 인자로 전달될 수 있으며, 함수의 반환값으로 사용될 수 있음
이는 함수가 값으로 취급되는 것을 의미
자바스크립트에서 함수는 객체로 간주되고 내부적으로 프로퍼티와 메서드를 가짐
디스의 동작 원리와 활용
디스는 함수 호출 방식에 따라 참조하는 객체가 달라지는 동적인 특성을 가짐
일반 함수 호출, 메서드 호출, 생성자 함수 호출, 화살표 함수 등 다양한 상황에서 디스의 값이 달라짐
왜냐하면 디스는 함수가 호출되는 문맥 (context)에 따라 동적으로 결정되기 때문
일반 함수 호출에서는 전역 객체를 참조
메서드 호출에서는 호출한 객체를 참조
생성자 함수 호출에서는 새로 생성된 객체를 참조
Reference
https://f-lab.kr/insight/understanding-javascript-functions-and-this-20260118
자바스크립트에서 함수와 디스(this)의 이해
이 글은 자바스크립트에서 함수와 디스(this)의 동작 원리, 순수 함수의 장점, 화살표 함수와 함수 선언문의 차이, 비동기 처리와 콜백 함수, 프로미스 및 async/await의 활용법을 다룹니다.
f-lab.kr
'Programming > JavaScript' 카테고리의 다른 글
| 자바스크립트에서 심볼 (Symbol)을 사용하는 이유 (0) | 2026.02.26 |
|---|---|
| 자바스크립트 내부 슬롯과 내부 메서드 이해하기 (0) | 2025.12.21 |
| 자바스크립트 객체의 본질과 활용 (0) | 2025.12.20 |
| 실무자를 위한 자바스크립트 '가비지 컬렉션' 가이드 (0) | 2025.11.15 |
| 인기 npm 패키지들을 대체하는 최신 Node.js 내장 기능들 (0) | 2025.10.19 |
