함수 작동원리가


호출할때 함수 안에 내용물을 메모리에 올리고 실행하고 다되면 지우고 또 호출하면 생성 삭제 생성삭제 이렇게 된다하더라고


그래서 팁에보니까 함수를 클로저형식으로 쓰면 한번만 생성되고 쭉 쓸수 있다고 하더라고


function foo()

{

function print()

{

print("hello")

}


return function ()

{

print()

}

}


fooFunction = foo()


fooFunction(); // hello?



이런식으로


내가 궁금한건 foo에서반환한 익명함수는 메모리에 올려놓아져 있다고 생각하는데


저 print()함수는 호출하면 하면 생성삭제 아니면 저거도 같이 미리 생성되어있는건지 궁금해


언어는 자바스크립트야