Chrome 디버거가 코드를 통해 또는 다른 종류의 주석 태그를 사용하여 한 줄에 침입하도록하고 싶습니다 console.break()
.
Chrome 디버거가 코드를 통해 또는 다른 종류의 주석 태그를 사용하여 한 줄에 침입하도록하고 싶습니다 console.break()
.
답변:
debugger;
코드 내에서 사용할 수 있습니다 . 개발자 콘솔이 열려 있으면 실행이 중단됩니다. 방화범에서도 작동합니다.
setTimeout(function(){debugger;}, 3000);
debugger;
모든 주요 브라우저 에서도 지원됩니다. 자세한 정보 : w3schools.com/jsref/jsref_debugger.asp
버튼 클릭 리스너를 설정하고 debugger;
예
$("#myBtn").click(function() {
debugger;
});
데모
JavaScript 디버깅에 대한 자료
다른 사람들이 이미 말했듯 debugger;
이 갈 길입니다. 함수 호출 직전에 브라우저의 명령 줄에서 중단 점을 설정하고 제거 할 수있는 작은 스크립트를 작성했습니다 :
http://andrijac.github.io/blog/2014/01/31/javascript-breakpoint/
"스크립트"탭에서 코드가있는 곳으로 이동하십시오. 줄 번호 왼쪽에서 클릭하십시오. 중단 점이 설정됩니다.
스크린 샷 :
그런 다음 스크린 샷에 표시된대로 오른쪽 탭에서 중단 점을 추적 할 수 있습니다.
debugger
ES5부터 EcmaScript에 의해 예약 된 키워드이며 선택적 시맨틱이 제공됩니다.
결과적으로 Chrome뿐만 아니라 Firefox 및 Node.js 를 통해 사용할 수도node debug myscript.js
있습니다.
표준은 말합니다 :
통사론
DebuggerStatement : debugger ;
의미론
DebuggerStatement 프로덕션을 평가하면 구현시 디버거에서 실행될 때 중단 점이 발생할 수 있습니다. 디버거가 없거나 활성화되어 있으면이 명령문은 관찰 가능한 효과가 없습니다.
프로덕션 DebuggerStatement : 디버거; 다음과 같이 평가됩니다.
- 구현 정의 디버깅 기능이 사용 가능하고 사용 가능한 경우
- 구현 정의 디버깅 조치를 수행하십시오.
- 결과는 구현 정의 완료 값이되게하십시오.
- 그밖에
- 결과를 (정상, 비어 있음, 비어 있음)으로하십시오.
- 결과를 반환합니다.
ES6에는 변화가 없습니다.
가능할 수 있으며 여러 가지 이유가 있습니다. 예를 들어, 페이지 로딩 시작 부분에 가까운 자바 스크립트 무한 루프를 디버깅하면 크롬 개발자 툴셋 (또는 파이어 버그)이 올바르게로드되지 않습니다.
섹션 2 참조
http://www.laurencegellert.com/2012/05/the-three-ways-of-setting-breakpoints-in-javascript/
또는 필요한 테스트 지점에서 코드에 단어 디버거가 포함 된 줄을 추가하십시오.
debug(functionName)
함수를 디버그하도록 설정할 수도 있습니다.
https://developers.google.com/web/tools/chrome-devtools/javascript/breakpoints#function
JavaScript 코드를 디버깅하는 방법에는 여러 가지가 있습니다. 다음 두 가지 접근 방식은 코드를 통해 JavaScript를 디버깅하는 데 널리 사용됩니다.
console.log()
브라우저 콘솔에서 값을 인쇄하는 데 사용 합니다. (이는 코드의 특정 지점에서 값을 이해하는 데 도움이됩니다)
디버거 키워드. debugger;
디버깅하려는 위치에 추가 하고 브라우저의 개발자 콘솔을 열고 소스 탭으로 이동하십시오.
JavaScript 코드를 디버깅하는 더 많은 도구와 방법은 이 링크에서 W3School에 의해 제공됩니다 .
debugger;
하거나 개발자 도구 모음에서 정기적으로 브레이크 포인트를 사용하고 계십니까?