타이머 settimeout 및 setInterval을 사용하여 매개변수를 전달할 수 있는 함수를 실행하는 방법
window.setTimeout이든 window.setInterval이든 함수 이름을 호출 핸들로 사용할 때는 매개변수를 취해야 하는 경우가 많기 때문에 해결 방법을 찾아야 합니다. 그것. 온라인 쿼리 후 요약은 다음과 같습니다.\x0d\예를 들어 hello(_name) 함수의 경우 사용자 이름에 대한 환영 메시지를 표시하는 데 사용됩니다.\x0d\var userName="jack";\x0d\ //사용자 이름에 따라 환영 메시지 표시\x0d\function hello(_name){\x0d\ Alert("hello,"+_name);\x0d\}\x0d\이때, 다음 명령문을 사용하여 hello 함수의 실행을 3초 동안 지연하면 작동하지 않습니다. Line:\x0d\window.setTimeout(hello(userName),3000);\x0d\이로 인해 hello 함수가 즉시 실행됩니다. 반환 값은 호출 핸들로 setTimeout 함수에 전달되며 결과는 프로그램에 필요한 것이 아닙니다. 원하는 결과는 문자열 형식을 사용하여 얻을 수 있습니다.\x0d\window.setTimeout("hello(userName)",3000) 이것은 방법 (1)입니다.\x0d\여기의 문자열은 JavaScript 코드의 일부입니다. userName 변수를 의미하며, 테스트 후 이 변수가 전역 변수이거나 특정 함수에서 setTimeout을 호출하고 이 변수가 함수의 내부 변수일 경우에만 해당 변수가 존재하지 않는다고 보고됩니다. 하지만 이런 작성 방식은 직관적이지 않고 어떤 경우에는 함수 이름을 사용해야 하므로 누군가 다음과 같은\x0d\method (2)를 생각해 냈습니다.\x0d\