<script>
function outter() {
var title = 'a little prince';
return function () {
document.write(title);
}
}
outter()();
</script>
함수에서 함수호출을 원래 outter 이라는 함수를 호출하고 싶으면 outter(); 이렇게 하는걸로 알고있는데 왜 위함수에서는
outter(); 이렇게 호출했을시에는 아무것도 변화가없고 괄호를 2번을 넣어서 outter()(); 이렇게 호출을 해야만 a
little prince 라고 출력되는지 질문드립니다...
형님 그게뭔 소리인가요
아웃터를 실행하면 리턴으로 함수 그자체를 받는거지, 리턴받은 함수를 실행시키는 건 아님. 그러니까 받은 리턴값을 실행하려면 ()를 한번더 해주는거.