`setTimeout`에서 함수 호출을 항상 괄호로 묶지 않는 이유는 무엇입니까?
함수 호출에서 괄호를 사용해야 하는 경우
다음 코드를 살펴보면
var myFunction = function() { setTimeout(myFunction, 1000); } myFunction();
이유가 궁금할 수도 있습니다. setTimeout 내의 함수 호출에는 괄호가 필요하지 않지만 독립적인 함수 호출에는
구별 이해
- myFunction: 이 이름은 함수 정의를 나타냅니다.
- myFunction(): 괄호를 추가하면 function.
Timeout 함수 인수
setTimeout은 함수 참조를 인수 중 하나로 사용합니다. 주어진 코드에서 myFunction은 콜백 함수로 참조됩니다.
Timeout 인수의 괄호
setTimeout(myFunction(), 1000)에 괄호를 포함하면 의도하지 않은 결과가 발생할 수 있습니다. myFunction이 함수를 반환하는 경우(예: 화살표 함수 사용) 이러한 경우 setTimeout은 함수 참조 자체 대신 myFunction의 반환 값을 받습니다. 이로 인해 함수가 반복적으로 실행되거나 예상치 못한 동작이 발생할 수 있습니다.
따라서 함수 참조가 필요한 setTimeout 또는 유사한 메서드를 사용할 때는 일반적으로 함수 인수에 대해 괄호를 생략하는 것이 좋습니다.
위 내용은 `setTimeout`에서 함수 호출을 항상 괄호로 묶지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제









