jsfiddle에서 js를 디버깅하는 방법


95

이 jsfiddle을보고 있습니다 : http://jsfiddle.net/carpasse/mcVfK/ 문제가 아닌 잘 작동합니다. 자바 스크립트를 통해 디버그하는 방법을 알고 싶습니다. 디버거 명령을 사용하려고했는데 소스 탭에서 찾을 수 없습니까? 이걸 어떻게 디버깅 할 수 있는지 아십니까?

바이올린의 일부 코드 :

angular.module('app', ['appServices'])
    .config(['$routeProvider', function($routeProvider) {
        $routeProvider.
                when('/home', {templateUrl: 'home.html',   controller: HomeCtrl}).
                when('/list', {templateUrl: 'list.html',   controller: ListCtrl}).
                when('/detail/:itemId', {templateUrl: 'detail.html',   controller: DetailCtrl}).
                when('/settings', {templateUrl: 'settings.html',   controller: SettingsCtrl}).
                otherwise({redirectTo: '/home'});
}]);

1
debugger;코드에 단어 를 삽입하십시오 . Chrome과 Firefox는 자동으로 단계별 디버거를 엽니 다! (나는 그것이 더 유명하게 @ user3335908의 대답에서이 팁을 복사 한)
윌 셰퍼드

답변:


53

JavaScript는 Chrome 소스 탭의 fiddle.jshell.net 폴더에서 실행됩니다. 아래 Chrome 스크린 샷에 표시된 색인 파일에 중단 점을 추가 할 수 있습니다.

Chrome에서 JSFiddle 디버깅

여기에 이미지 설명 입력


9
이것은 나에게 아무것도 보여주지 않는다. 나는 빈 인덱스 파일 얻을
올리버 왓킨스

1
@OliverWatkins 그것은 나에게도 비어 있었다. 맨 위에있는 "업데이트"를 클릭하여이 문제를 해결 한 다음 다시 실행 한 후 개발자 도구 패널의 "jsfiddle.net"아래에있는 소스 탭에서 이름이 지정된 폴더 아래에 , 코드를 보여주는 다른 색인 파일이있는 추가 디렉토리가 있습니다. 도움이 되었기를 바랍니다!
MilesMorales

fiddle.jshell.net 아래에 (색인)도있는 세 번째 폴더가 있습니다. 그것을 열면 js가 포함 된 html 파일이 있습니다. (라인 48에 나는 쓴 경우)
존 매킨타이어

fiddle.jshell.net단지 포함 _display(index)있는 거의 비어있는 HTML 페이지입니다 내부 <p>That page doesn't exist.</p>. 내 js 코드가 없습니다
CygnusX1

35

debugger;코드에 있는 문장을 사용하십시오 . 브라우저는이 문에 중단 점을 삽입하고 브라우저의 디버거에서 계속할 수 있습니다.

이것은 크롬과 파이어 폭스에서 적어도 작동합니다. https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Statements/debugger

angular.module('app', ['appServices'])
.config(['$routeProvider', function($routeProvider) {
    // *** Debugger invoked here
    debugger;
    $routeProvider.
            when('/home', {templateUrl: 'home.html',   controller: HomeCtrl}).
            when('/list', {templateUrl: 'list.html',   controller: ListCtrl}).
            when('/detail/:itemId', {templateUrl: 'detail.html',   controller: DetailCtrl}).
            when('/settings', {templateUrl: 'settings.html',   controller: SettingsCtrl}).
            otherwise({redirectTo: '/home'});
}]);

이것이 최고의 답변입니다!
vibs2006

6

언급 할 가치가있는 것. 크롬 개발 도구를 사용하는 경우. ctrl+ shift+를 누르면 F소스의 모든 파일을 검색 할 수 있습니다.


2
즉, 매우 편리 맥에 cmd를 + Alt + F입니다
존 W. 클라크

이것은 훨씬 더 나은 대답이지만, 이런 식으로 찾은 코드에 설정된 중단 점은 존중되지 않습니다.
Slbox

이 힌트에 Thx 소스 트리에 나타나지 않는 파일에서 코드를 찾을 수 있습니다 ...
GarfieldKlon

3

다른 답변 외에도.

매우 자주 콘솔에 디버그 정보를 작성하는 것이 유용합니다.

console.log("debug information here");

출력은 브라우저 개발 도구 콘솔에서 사용할 수 있습니다. 일반적인 자바 스크립트 코드에서 기록 된 것처럼.
이것은 매우 간단하고 효과적입니다.


3

코드에 디버거 문을 추가하고 bowser에서 "개발자 도구"를 활성화합니다. 그런 다음 JSFiddle에서 코드를 실행하면 디버거가 작동합니다!.


0

여기 또 다른 곳이 있습니다 :)

Jsfiddle.net노드 아래 .

여기에 이미지 설명 입력


이것은 페이지에 표시된 소스 코드를 <pre>...로 둘러싸고있는 것 같습니다 </pre>. 실제 실행 가능한 코드가 아닙니다.
CygnusX1

이 코드는 디버깅 할 수 없습니다. 당신이 누락 강조 ...입니다 수없는 하나의 힌트
GarfieldKlon

0

자바 스크립트는 개발자 도구를 사용할 때 Chrome 소스 탭의 ?editor_console=true폴더 result (fiddle.jshell.net)/fiddle.jshell.net/_display폴더에 있는 파일 에서 실행됩니다 . 코드에 중단 점을 추가 한 다음 페이지를 새로 고칠 수 있습니다. 여기에 이미지 설명 입력

Chrome 디버거 사용에 대한 자세한 내용 은 Chrome에서 Javascript 디버깅 시도에서 찾을 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.