Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript에서 arguments 객체와 typeof 연산자를 함께 사용하는 방법

arguments 객체는 함수 호출 시 전달된 인수들을 담고 있는 객체로, 모든 함수 내부에서 접근할 수 있는 특수한 변수입니다. 예를 들어 함수에 두 개의 인수가 전달되었다면 다음과 같이 각각의 값에 접근할 수 있습니다.

arguments[0]
arguments[1]

마찬가지 방식으로 JavaScript에서는 typeof 연산자를 arguments 객체와 함께 활용할 수 있습니다. 먼저 typeof 연산자가 어떻게 동작하는지 살펴보겠습니다.

typeof 연산자란?

typeof는 단항(unary) 연산자로, 하나의 피연산자 앞에 위치하며 해당 피연산자의 데이터 타입을 문자열 형태로 반환합니다. 피연산자는 어떤 타입이든 될 수 있습니다.

예제 코드

다음 코드는 typeof 연산자를 사용하여 변수의 타입을 확인하고 그 결과에 따라 다른 메시지를 출력하는 방법을 보여줍니다.

<html>
   <body>
      <script>
         var a = 20;
         var b = "String";
         var linebreak = "<br />";

         result = (typeof b == "string" ? "B is String" : "B is Numeric");
         document.write("Result => ");
         document.write(result);
         document.write(linebreak);

         result = (typeof a == "string" ? "A is String" : "A is Numeric");
         document.write("Result => ");
         document.write(result);
         document.write(linebreak);
      </script>
   </body>
</html>

위 예제에서 변수 b는 문자열이므로 "B is String"이 출력되고, 변수 a는 숫자이므로 "A is Numeric"이 출력됩니다.

typeof와 arguments 객체 함께 사용하기

이제 JavaScript에서 typeof를 arguments 객체와 함께 사용하는 방법을 알아보겠습니다. arguments 객체 자체에 typeof를 적용하면 다음과 같이 object라는 결과가 반환됩니다.

document.write(typeof arguments); // object 출력

함수에 두 개의 인수가 전달된 경우, typeof를 각 인수에 개별적으로 적용하면 해당 인수들의 데이터 타입을 확인할 수 있습니다.

document.write(typeof arguments[0]); // 첫 번째 인수의 타입 출력
document.write(typeof arguments[1]); // 두 번째 인수의 타입 출력

예를 들어 첫 번째 인수로 숫자 10, 두 번째 인수로 문자열 "hello"가 전달되었다면 각각 numberstring이 출력됩니다. 이처럼 typeof와 arguments를 조합하면 함수에 전달된 인수의 개수나 타입과 관계없이 유연하게 처리할 수 있어, 가변 인자를 다루는 함수를 작성할 때 매우 유용합니다.