>웹 프론트엔드 >JS 튜토리얼 >JavaScript 함수 참조에 괄호를 언제 사용해야 합니까?

JavaScript 함수 참조에 괄호를 언제 사용해야 합니까?

Patricia Arquette
Patricia Arquette원래의
2024-12-05 10:27:13618검색

When to Use Parentheses with JavaScript Function References?

괄호를 사용해야 하는 경우와 사용하지 않는 경우는 무엇입니까?

JavaScript에서는 특히 함수의 경우 괄호를 사용해야 하는 경우와 사용하지 않는 경우를 이해하는 것이 중요합니다. 참조. 다음 코드를 고려해보세요.

var myFunction = function() {
   setTimeout(myFunction, 1000);
}
myFunction();

setTimeout의 함수 호출에는 왜 괄호가 필요하지 않은데 마지막 줄에는 괄호가 필요합니까?

Nutshell

  • myFunction은
  • myFunction()이 호출하는 함수를 참조합니다. function

자세한 설명

setTimeout은 함수 참조를 인수로 받아들입니다. 첫 번째 줄에서 setTimeout(myFunction, 1000)은 참조가 필요하기 때문에 괄호 없이 함수 참조를 전달합니다.

그러나 마지막 줄에서 myFunction()은 실제로 함수를 호출합니다. 함수를 호출하려면 괄호를 사용하여 실행합니다. 따라서 myFunction()은 함수를 실행하므로 괄호가 필요합니다.

Exception

다음과 같이 setTimeout(myFunction(), 1000)이 적절한 경우가 있을 수 있습니다. myFunction()이 함수를 반환할 때. 예:

function myFunction() {
    return function() {
        alert("ohai")
    }
}

// Or

const myFunction = () => () => alert("ohai")

이 경우 setTimeout(myFunction(), 1000):

  • 외부 함수 myFunction을 호출합니다
  • 반환 값을 얻습니다. 이는 내부 함수입니다
  • 내부 함수를 인수로 전달합니다. setTimeout

이렇게 하면 매초 알림이 발생합니다.

결론

효과적인 JavaScript를 위해서는 함수 참조에서 괄호의 목적을 이해하는 것이 필수적입니다. 프로그램 작성. 괄호는 함수 호출을 의미한다는 점을 기억하면 이를 올바르게 사용하여 함수를 호출하거나 필요에 따라 함수 참조를 전달할 수 있습니다.

위 내용은 JavaScript 함수 참조에 괄호를 언제 사용해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.