
JavaScript의 일반 함수에서 arguments 객체란 무엇이며, 왜 화살표 함수에서는 사용할 수 없을까요?
요약
본 기사는 JavaScript의 arguments 객체가 일반 함수에서 모든 인수에 접근하는 방법을 설명합니다. 이 객체는 유연한 함수 처리에 유용하지만, 화살표 함수의 문맥적 스코핑 특성 때문에 사용할 수 없다는 점을 다룹니다.
핵심 포인트
- arguments 객체는 전달된 모든 인수를 배열처럼 접근하게 해줍니다.
- 일반 함수에서만 사용 가능하며, 화살표 함수에서는 지원되지 않습니다.
- 화살표 함수의 문맥적 스코핑 특성 때문에 arguments를 사용할 수 없습니다.
JavaScript의 arguments 객체는 함수에 전달된 모든 인수를 배열과 유사한(array-like) 객체로 접근할 수 있게 해줍니다. 이 기능은 런타임 시 몇 개의 인수가 전달될지 알기 어려운 구식 또는 더 복잡한 함수를 다룰 때 특히 유용합니다. 하지만, 이 객체는 화살표 함수의 문맥적 스코핑(lexical scoping) 특성 때문에 사용할 수 없습니다.
핵심 포인트를 분석하고 arguments 객체가 일반 함수와 화살표 함수 사이에서 왜 다르게 작동하는지 논의해 보겠습니다.
코드
// 일반 함수에서 `arguments` 사용 예시
function sum() {
let total = 0;
...
플로우차트
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기