큰 문제는 아니지만이 논리를 통해 함수를 호출 할 수없는 이유를 이해할 수없는 함수 내에서 함수를 호출하려고합니다.Higher Order 함수 호출 동작이 매우 혼란 스럽습니다.
function func1(futurefunc){
futurefunc();
}
function func2(){
return 3+3;
}
func(func2);
이제 위의 코드 결과는 정의되지 않았습니다. 그러나 넣을 때 : func(alert)
, 경고 인수가 호출됩니다. 코드가 보인다
function func1(futurefunc){
return futurefunc();
}
: 나는 왜 두 번째 경우가 실행되고 첫 번째 부분은 나는 다음과 같은 시도 할 때 6.
것이 경우 반환 값을 프린트하지 않는다 이해하지 않는다 이 값은 6이 적당하다. 명확한 설명. 나는 아무것도 놓치지 않기를 바란다.
실제로 사용하는 언어 인 경우 자바 스크립트 태그를 추가해야합니다. 함수 호출 의미론은 언어에 따라 다릅니다. – Gene
'return' 문을 놓치더라도 첫 번째 경우가 아무 것도 반환하지 않는 이유를 이해할 수 없습니까? 왜 그렇게 혼란 스럽습니까? – Tomalak
@Tomalak 괄호 때문에 혼란 스러웠다. 함수 인자가 3 + 3을 반환 했으므로 함수 인자를 호출해야한다고 생각했다. 반환 값이 될 것이라고 생각했다. 기본 함수를 잊어 버린 것 같은 괄호를 추가하여 함수를 호출하는 방법을 배웠습니다. – Alonso