누군가 내 JavaScript 코드가 내 aspx 웹 페이지에로드되었거나 호출하기 전에 존재 하는지를 감지 할 수있는 JavaScript 코드 스 니펫을 제공 할 수 있습니까?JavaScript 함수를 호출하기 전에 페이지에 JavaScript 함수가로드되었거나 존재하는지 어떻게 확인할 수 있습니까?
감사합니다.
누군가 내 JavaScript 코드가 내 aspx 웹 페이지에로드되었거나 호출하기 전에 존재 하는지를 감지 할 수있는 JavaScript 코드 스 니펫을 제공 할 수 있습니까?JavaScript 함수를 호출하기 전에 페이지에 JavaScript 함수가로드되었거나 존재하는지 어떻게 확인할 수 있습니까?
감사합니다.
당신은 명시 적으로 함수를 호출하기 전에 있다고 확인할 수 있습니다.
if (typeof(functionName) == "function")
functionName();
'functionName' 주위에는 괄호가 필요 없습니다. 'typeof'는 함수가 아니라 연산자입니다. –
loaded
은 무엇을 의미합니까?
일반적으로 모든 스크립트를 호출하기 전에 onload
이벤트와 같은 것을 사용하여 모든 스크립트를로드해야합니다. 경우 당신은 함수가 선언되었는지 여부를하려는 여부를 당신은 typeof
연산자를 사용할 수 있습니다`===`,`으로 typeof` 항상 문자열을 반환에 대한
// Check the type of "myRandomFunction"
// Note: typeof is the only way you can use undeclared variables without raising an exception
if (typeof myRandomFunction === 'function') {
myRandomFunction()
}
감사합니다. – Thomas
필요 없음을. 사실,'==='는'=='보다 조금 느립니다. –
@Marcel Korpel 나는 조건을 충족시키는 지보기 위해 유형을 강요 할 필요가 없기 때문에'==='는 보통 더 빠르다고 생각했다. 오 잘, 매일 새로운 것을 배웁니다. BTW, 그것에 대한 추가 읽기 또는 벤치 마크가 있습니까? – alex
@Marcel Korpel 아니오,'==='는 * 실제로 * ** 빠릅니다 ** 유형 변환을위한 * 오버 헤드가 없으므로. 또한'==='를 사용하는 것이 좋습니다. 내 노드 repl에 대한 빠른 검사조차도 proof와 같다. 숫자와 문자열이 관련 될 때'=='은 약 10 배 느리다. –