[javascript] JavaScript : 모든 오류에서 Chrome을 중단시키는 방법이 있습니까?

Chrome에서 Firebug의 “모든 오류 발생”기능과 동등한 기능을 찾고 있습니다. 스크립트 탭에서 Chrome에는 ‘모든 예외에서 일시 중지’가 있지만 모든 오류가 발생하는 것과는 다릅니다.

예를 들어 다음 코드가 포함 된 페이지를로드 할 때 Chrome에서 줄 바꿈하고 싶습니다 foo.bar = 42. 대신 “모든 예외에서 일시 중지”를 활성화하더라도 예상 된 결과를 얻지 못합니다.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head>
        <script type="text/javascript">

            function doError() {
                foo.bar = 42;
            }

            window.onload = function() {
                try {
                    doError();
                } catch (e) {
                    console.log("Error", e);
                }
            }
        </script>
    </head>
    <body>
    </body>
</html>

이 페이지 에 붙여 넣거나이 jsFiddle을 사용하여 코드를 붙여 넣을 수 있습니다 .



답변

편집 : 내가 대답 한 원래 링크는 이제 유효하지 않습니다 . 최신 URL은 2016-11-11 기준 으로 https://developers.google.com/web/tools/chrome-devtools/javascript/add-breakpoints#exceptions 입니다.

이 질문에 답이 있지만 더 이상 정확하지 않습니다. 위의 링크를 사용하십시오 ^


(위의 편집으로 대체 된 링크)-이제 모든 예외 또는 처리되지 않은 예외에서 중단되도록 설정할 수 있습니다. (당신이에있을 필요가 있습니다 소스 버튼을 볼 수있는 탭을 선택합니다.)

Chrome은 DOM 변경 또는 네트워크 이벤트 중단과 같은 다른 유용한 중단 점 기능도 추가했습니다.

일반적으로 질문에 다시 대답하지는 않지만 같은 질문을했고 지금 잘못된 답을 찾았으므로 나중에 검색 할 때 찾아온 사람들을 위해이 정보를 여기에 넣는 것으로 생각했습니다. 🙂


답변

다른 옵션을 보여주는 사진을 게시하기 위해 문제가 발생했습니다.

Chrome 75.0.3770.142 [2018 년 7 월 29 일]

Chrome 38.0.2125.111 이후 매우 유사한 UI [2014 년 12 월 11 일]

탭에서 Sources:

여기에 이미지 설명을 입력하십시오

버튼이 활성화되면 Pause On Caught Exceptions아래 확인란 을 사용할 수 있습니다.
여기에 이미지 설명을 입력하십시오


이전 버전

Chrome 32.0.1700.102 [03 feb 2014]

여기에 이미지 설명을 입력하십시오

여기에 이미지 설명을 입력하십시오
여기에 이미지 설명을 입력하십시오
여기에 이미지 설명을 입력하십시오

크롬 27.0.1453.93 안정

디버그 옵션


답변

Chrome에서 ‘모든 예외에서 일시 중지’버튼으로 지원됩니다.

사용하려면 다음을 수행하십시오.

  • Chrome 개발자 도구의 ‘소스’탭으로 이동
  • 창 하단의 “일시 정지”버튼을 클릭하여 “모든 예외 모드에서 일시 정지”로 전환하십시오.

이 버튼에는 여러 상태가 있습니다. 버튼을 계속 클릭하여

  • “모든 예외에서 일시 중지”-버튼은 밝은 파란색으로 표시됩니다
  • “발견되지 않은 예외에 대한 일시 정지”버튼은 자주색으로 표시 됩니다.
  • “예외시 일시 중지하지 않음”-버튼이 회색으로 표시됩니다

답변

거의 모든 오류에서 예외가 발생합니다. “예외에서 일시 중지”옵션으로 작동하지 않는다고 생각할 수있는 유일한 오류는 코드가 실행되기 전에 발생하는 구문 오류입니다.

분명히 try-catch 블록 안에 있으면 예외에서 Chrome이 일시 중지되지 않습니다. 포착되지 않은 예외에서만 일시 정지됩니다. 나는 그것을 바꿀 방법을 모른다.

예외가 발생한 행을 알아야하는 경우 (예외를 재현 할 수있는 경우 중단 점을 설정할 수 있음) Errorcatch 블록에 제공된 오브젝트 stack에는 예외가 발생한 위치를 표시 하는 특성이 있습니다.


답변

불행히도 Firebug와 마찬가지로 Chrome의 개발자 도구는 “모든 오류를 중지”할 수없는 것으로 보입니다.


답변