커뮤니티
ReferenceError 뜨는데 왜 이런건지요?
2015-05-01 14:51:25
226
글번호 85622
예스스팟 스튜디오에서 setTimeout()을 사용할 수 있는지 테스트 차원에서 간단히 아래와같이 코딩해봤는데요
function Main_OnStart()
{ setTimeout("abc(111)", 10000);
}
function abc(i)
{ Main.MessageList("abc: ", i);
}
실행하면 하단 오류보고 창에 “ReferenceError: setTimeout is not defined” 라고 표시됩니다.
setInterval() 로도 해봤는데 마찬가지 오류메시지가 뜨더군요.
예스스팟이 자바스크립트 기반위에서 작동한다고 하여 자바스크립트 함수를 사용해 본건데, 왜 이들 함수들이 정의되지 않았다고 뜨는건지 잘 모르겠네요.
자바스크립트의 다른 함수들...예를들면, String(), getDate(), toLowerCase() 같은 함수들은 잘 작동하던데, 왜 setTimeout(), setInterval() 같은 다른 자바스크립트 함수들은 작동이 안되는건지 궁금합니다.
답변 1
예스스탁 예스스탁 답변
2015-05-04 09:27:05
안녕하세요
예스스탁입니다.
언급하신 함수는 인터넷 익스플로러와 같은 브라우져에서 실행되는 함수입니다.
예스스팟은 브라우져실행과는 관계가 없어 해당 함수는 사용할수 없습니다.
스팟의 메인함수중에 타이머와 관련된 함수가 있습니다.
Main.SetTimer(nEventID, nElapse)
Main.KillTimer(nEventID)
위 함수를 이용해서 제어하시면 됩니다.
var i ;
function Main_OnStart()
{
Main.SetTimer(1, 3000);
i = 0;
}
function Main_OnTimer(nEventID)
{
if (nEventID == 1)
{
abc();
i = i+1;
if (i == 1)
{
Main.KillTimer(1);
}
}
}
function abc()
{ Main.MessageList("abc: ");
}
즐거운 하루되세요
> 김태희 님이 쓴 글입니다.
> 제목 : ReferenceError 뜨는데 왜 이런건지요?
> 예스스팟 스튜디오에서 setTimeout()을 사용할 수 있는지 테스트 차원에서 간단히 아래와같이 코딩해봤는데요
function Main_OnStart()
{ setTimeout("abc(111)", 10000);
}
function abc(i)
{ Main.MessageList("abc: ", i);
}
실행하면 하단 오류보고 창에 “ReferenceError: setTimeout is not defined” 라고 표시됩니다.
setInterval() 로도 해봤는데 마찬가지 오류메시지가 뜨더군요.
예스스팟이 자바스크립트 기반위에서 작동한다고 하여 자바스크립트 함수를 사용해 본건데, 왜 이들 함수들이 정의되지 않았다고 뜨는건지 잘 모르겠네요.
자바스크립트의 다른 함수들...예를들면, String(), getDate(), toLowerCase() 같은 함수들은 잘 작동하던데, 왜 setTimeout(), setInterval() 같은 다른 자바스크립트 함수들은 작동이 안되는건지 궁금합니다.