• 카테고리

    질문 & 답변
  • 세부 분야

    웹 개발

  • 해결 여부

    해결됨

requsetAnimationFrame 질문입니다!

20.05.27 17:22 작성 조회수 164

3

오류가 난 후에

requsetAnimationFrame(self.run(self)); 가 아니라 requsetAnimationFrame(function() {self.run(self)}; 으로 function 안에 self.run(self)를 쓰셨는데 둘의 차이점이 궁금합니다.

답변 1

답변을 작성해보세요.

1

requestAnimationFrame()의 괄호 안에는 함수 자체가 들어가야 합니다.

즉,
function foo() {

}

이런 함수가 있다고 가정하면,

requestAnimationFrame( foo() ); 가 아니라,
requestAnimationFrame( foo ); 가 되어야 하는 거죠~

foo()를 넣게되면, 함수 실행의 결과 값,
결국 foo 함수의 리턴값을 requestAnimationFrame의 인자로 넣어 호출하는 것이 되는 것이죠~

self.run(self)도 run 메서드를 호출하는 것이기때문에
requestAnimationFrame의 사용법에 맞지 않습니다^^
함수 자체를 넣으면서도 self라는 인자를 매개변수에 넣어야 하기에 익명 함수를 활용한 것이고요.