2013-01-10 3 views
1

스택 깊이에 따라 모든 메시지를 들여 쓰기하는 자바 스크립트 로거를 찾고 있습니다. 들여 쓰기 및 채색 기능이있는 자바 스크립트 로거를 찾고 있습니다. (브라우저마다 다를 수 있습니다.)

hi from A 
    hi from B 

이 또한 내가 다른 스택에서 기능에서 발생하는 경우 메시지를 색칠 할 수 있도록하려면 : 같은 예를 들어이 보일 것입니다 기능 A 호출 기능 B합니다. 그렇게하면 비동기 이벤트를 추적 할 수 있습니다.

인터페이스는 다음과 같이되어야합니다 :

function B(){ log('hi from B'); } 
function A(){ log('hi from A'); B(); } 

어떤 제안 부탁드립니다 :)

답변

1

나는이 기능을 사용하면 도움이해야한다고 생각 : 다음 코드의

var log = function(msg) { 
    var $level = 0, parent = arguments.callee.caller; 
    while(parent 
     && parent.arguments 
     && parent.arguments.callee 
     && parent.arguments.callee.caller) { 
    parent = parent.arguments.callee.caller; 
    $level = $level + 1; 
    } 
    console.info(Array($level).join(" "), msg); 
} 

출력

function B(){ log('hi from B'); } 
function A(){ log('hi from A'); B(); } 

B(); 
A(); 
당신이 join(" ")의 공백 문자의 수를 유의하시기 바랍니다

console.info(Array($level - 1).join(" "), msg); 

같은 출력을 수정해야하는 들여 쓰기가 얼마나 큰 지정 할 수 있도록

Output

log (3210)는 부모 호출자로 페이지를 취할 수있다.

은 그게 도움이되기를 바랍니다.

관련 문제