Chrome 디버거에서 JavaScript 코드를 단계별로 실행할 때 계속하지 않으려면 어떻게 스크립트 실행을 종료합니까? 내가 찾은 유일한 방법은 브라우저 창을 닫는 것입니다.
"Reload this page"를 누르면 나머지 코드가 실행되고 F8 "Continue"를 누른 것처럼 양식을 제출합니다.
업데이트 :
스크립트가 일시 정지 된 상태에서 F5 (새로 고침)를 누르면 :
- Chrome (v22)은 스크립트를 실행합니다. 스크립트가 HTTP 요청을 제출하면 해당 요청에 대한 HTTP 응답이 표시됩니다. 원본 페이지가 새로 고쳐지지 않습니다.
- IE 9는 멈 춥니 다. 그러나 IE에는 "Stop Debugging"옵션이 있는데,이 버튼을 누르면 (F5를 누르지 않은 경우) 디버거 외부에서 스크립트를 계속 실행합니다.
- Firebug는 Chrome과 동일하게 작동합니다.
브라우저 창을 닫았다가 다시 여는 것이 브라우저 세션 상태를 종료시키고 중요 할 수 있기 때문에 항상 다음으로 가장 쉬운 방법은 아닙니다. 모든 중단 점도 손실됩니다.
업데이트 (2014 년 1 월) :
디버깅하는 동안 새로 고침 :
- Chrome v31 : 추가 중단 점에서 스크립트를 실행하고 중지 한 다음 (아약스 요청을 제출하지 않음) 새로 고칩니다.
- IE 11 : 새로 고침은 아무 것도 수행하지 않지만 F5를 눌러 계속할 수 있습니다.
- Firefox v26 : 스크립트 실행을 허용하지만 추가 중단 점에서 중지하지 않고 ajax 요청을 제출 한 다음 새로 고칩니다.
진보의 종류!
디버깅하는 동안 동일한 페이지로 이동하십시오.
- Chrome v31 : 새로 고침과 동일합니다.
- IE 11 : 스크립트가 종료되고 새 브라우저 세션이 시작됩니다 (닫았다가 다시 여는 것과 동일).
- Firefox v26 : 아무 일도 일어나지 않습니다.
또한 juacala 는 효과적인 해결 방법을 제안했습니다. 예를 들어, jQuery를 사용하는 경우 콘솔에서 delete $ 를 실행하면 jQuery 메소드가 발견되면 실행이 중지됩니다. 위의 모든 브라우저에서 테스트했으며 작동하는지 확인할 수 있습니다.
업데이트 (2015 년 3 월) :
마지막으로 2 년이 넘고 거의 10 만 회의 조회 후 Alexander K가 정답을 올렸습니다. Chrome에는 자체 작업 관리자가 있어 탭 자체 를 닫지 않고도 탭 프로세스 를 종료하여 모든 중단 점 및 기타 사항을 그대로 유지할 수 있습니다.
Chrome v22에서 브라우저를 테스트하기 위해 BrowserStack.com까지 갔으며 그 당시에도 이런 방식으로 작동한다는 것을 알았습니다.
Juacala의 해결 방법은 IE 또는 Firefox에서 디버깅 할 때 여전히 유용합니다.
업데이트 (2019 년 1 월) :
Chrome 개발자 도구는 마침내 스크립트 실행을 중지하는 적절한 방법을 추가했습니다 (약간 숨겨져 있지만). 자세한 내용은 James Gentes의 답변을 참조하십시오.
debugger;
개발자 도구 콘솔에 입력 하면 즉시 디버거에 물건을 넣고 스크립트를 중지합니다.