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

JavaScript에서 함수 호출 시 괄호 ()를 사용해야 하는 이유

JavaScript에서 함수를 다룰 때 괄호 ()는 매우 중요한 역할을 합니다. 함수 이름만으로 접근하면 함수의 정의(코드 자체)가 반환되고, 실제 실행 결과는 얻을 수 없습니다. 반면 괄호 ()를 붙여 호출하면 함수가 실행되어 그 결괏값을 받을 수 있습니다.

괄호 없이 함수에 접근하는 경우

예제

아래 예제에서는 함수를 괄호 없이 접근했습니다. 따라서 출력 결과에서 볼 수 있듯이 결과값이 아닌 함수 정의 전체가 그대로 반환됩니다.

<html>
<body>
<script>
   function toCelsius(f) {
      return (5/9) * (f-32);
   }
   document.write(toCelsius);
</script>
</body>
</html>

출력 결과

function toCelsius(f) { return (5/9) * (f-32); }


괄호를 사용해 함수를 호출하는 경우

예제

아래 예제에서는 함수를 괄호와 함께 호출했습니다. 이 경우 함수 정의가 아니라 실제 실행 결과가 화면에 표시됩니다.

<html>
<body>
<script>
   function toCelsius(f) {
      return (5/9) * (f-32);
   }
   document.write(toCelsius(208));
</script>
</body>
</html>

출력 결과

97.77777777777779


정리

즉, JavaScript에서 함수 이름은 그 자체로 하나의 값(객체)입니다. 괄호 없이 함수 이름을 참조하면 함수 객체 자체를 전달하는 것이고, 괄호 ()를 붙여야 비로소 함수가 실행됩니다. 콜백 함수를 인자로 넘길 때처럼 의도적으로 함수 정의를 전달해야 하는 경우를 제외하고, 일반적으로 함수의 결과가 필요하다면 반드시 괄호를 사용해 호출해야 합니다.