본문 바로가기
Front/JavaScript

Java Script 기본 문법(4)

by 프로그래밍 공부 2023. 5. 3.

함수의 매개변수에 대해 알아보자.

자바스크립트에서 함수는 호출 시에 매개변수의 영향을 받지 않는다. 

이는 함수 내부의 arguments 라는 프로퍼티를 이용해서 매개변수의 처리가 가능하기 때문이다.

우선 함수에 전달된 인자와 매개변수의 개수는 같지 않아도 작동된다. 

매개변수의 개수보다 인자가 적을 때는 넘어오지 않은 값을 undefined로 표시하고,

매개변수의 개수보다 초과된 인자는 무시한다.

위와 같은 함수에 인자를 차례대로 전달해보면 다음과 같이 출력된다.

 

이와 같이 함수에 넘어오는 인자의 개수를 확인하고 이에 따라 동작을 다르게 해 줄 수 있는데,

이를 가능하게 하는 게 바로 arguments다.

arguments 객체는 함수에 전달된 인수에 해당하는 Array 형태의 객체다.

array와 비슷하지만 array는 아니기 때문에 lenght 빼고는 어떤 array 속성도 없다.

하지만 array로 변환할 수 있기 때문에 필요시 array로 변환 가능하다. 

함수를 호출할 때 전달받은 인자들이 이 arguments 객체에 저장되어 사용된다. 

위와 같이 작성한 코드를 실행하면 아래와 같이 출력된다.

전달받은 인자들을 arguments 객체에 저장해 활용한다는 것을 활용할 수 있다.

이처럼 arguments 프로퍼티를 이용해 매개변수의 처리가 가능하다는 것을 알고 넘어가자.

다음으로 자바스크립트의 함수는 오버로딩 개념을 지원하지 않는다.

따라서 arguments 를 이용해 넘겨받는 인자에 따라 결괏값을 다르게 도출하는 등의 기능 구현이 필요하다.

이런 식으로 구현한다면 다음과 같이 출력된다.

자바와 같이 오버로딩은 할 수 없지만 arguments를 활용해 비슷하게 구현이 가능하다.

 

다음으로 기본 인자를 사용할 수 있다는 특징 또한 존재한다.

기본 인자는 값이 전달되지 않은 함수 파라미터의 기본값을 설정하는 방법이다.

인자로 받는 파라미터를 설정하지 않았다면 처음 출력은 undefined가 나오겠지만 

기본 인자를 설정함으로써 다음과 같이 출력된다.

 

'Front > JavaScript' 카테고리의 다른 글

Java Script 기본 문법(5)  (0) 2023.05.03
Java Script 기본 문법(3)  (0) 2023.05.03
Java Script 기본 문법(2)  (0) 2023.05.03
JavaScript 기본 문법(1)  (0) 2023.05.03
JavaScript(2)  (0) 2023.05.03