2012-09-18 3 views
2

저는 꽤 큰 프로젝트를 물려 받았고 성가신 버그를 추적하려고합니다.하지만 저의 삶에 대해이 특정 동작이 호출되어 실행되는 위치를 찾을 수 없습니다. 그들이 일어날 때 자바 스크립트 호출을 볼 수있는 방법이 있습니까? 방화 광에서 실행을 일시 중지 할 수 있지만 항상 addDomListenerOnce 호출에서 중지합니다.Javascript 호출이 발생하면 보시겠습니까?

+0

코드에서 동작이 일어나고있는 곳에서 중단 점을 배치 한 다음 스택 추적을보고 호출의 출처를 확인할 수 있습니다. – some

+0

그게 문제입니다. 코드에서 동작이 일어나고있는 곳을 찾을 수 없습니다. – Don

+1

그럼이 "특정 행동"은 무엇이라고 부릅니까? 어떻게 정의됩니까? 모든 애플리케이션에서 gazillions 메소드 호출이 있으며 너무 빠르게 발생하여 모든 것을 볼 수 없습니다. –

답변

1

모든 최신 브라우저는 디버깅 기능을 제공합니다.

예를 들어 Chrome Developer tools debbuging functions에서 찾으십시오. 중단 점을 설정하고 행 다음에 실행 행을 추적하는 것은 매우 쉽습니다. 물론 호출 스택이 있으므로 함수가 호출되는 위치를 볼 수 있습니다.

4

이 라인 당신이 원하는

debugger; 

를 추가 할 수 있습니다. 예를 들어, 함수의 첫 번째 줄처럼 실행되고 있는지 확인하고 싶습니다. 이렇게하면 스크립트 실행이 중단되고 방화 광에서 모든 것을 검사 할 수 있습니다. 오페라의 잠자리

+0

[진짜 질문, 비판가] 그 크로스 브라우저인가요? 정의 된 위치는 어디입니까? –

+0

@dystroy는 브라우저가 완전히 교차하는지 확인하지 않아도되지만 Firebug/Firefox (포스터에서 사용)와 함께 작동합니다. –

+3

[ECMA262-5] (http : // www. ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf) 12.15 "DebuggerStatement 프로덕션을 평가하면 구현시 디버거에서 실행할 때 중단 점이 발생할 수 있습니다. 디버거가 없거나이 문을 활성화 한 경우 눈에 띄는 효과가 없다. " [이 블로그 항목] (http://planet.openbravo.com/?p=32334)에 따르면 firebug, IE8 및 Chrome 9가 포함 된 Firefox에서 작동합니다. – some

2

당신은 옵션 "새 스크립트의 첫 번째 문에 브레이크"(감사합니다, @some)

그것은 왼쪽 상단 모서리에있는 다섯 번째 버튼의가 있습니다.

+0

정확한 제목은 "새 스크립트의 첫 번째 문구 작성 중단"입니다 (Opera 12.02에서) – some

+0

@ 일부 : 고마워, 고쳐! – Andre

관련 문제