2011-06-23 32 views
1

我的應用程序開始拋出這些錯誤。我不確定我明白爲什麼。我在Node.js中跟蹤此錯誤消息的下一步是什麼?

Exception went uncaught: 
{ stack: undefined, 
    arguments: [], 
    type: 'stack_overflow', 
    message: [Getter/Setter] } 

什麼是我的下一步到底是什麼導致此錯誤,爲什麼?

更新:這是錯誤的時候,在根級別不醒目:

node.js:116 
     throw e; // process.nextTick error, or 'error' event on first tick 
     ^
undefined 
+2

您是否在根級別捕捉異常?對於調試,通常我會讓進程崩潰,因爲您會獲得更多信息,例如發生錯誤的行號。 – hvgotcodes

+3

檢查無限遞歸,你可能有一個想法可能發生這種情況。堆棧被丟棄,所以你不會得到一個跟蹤。 –

+0

@hvgotcodes:我是,但只是因爲崩潰錯誤對我來說是無益的(對我來說,但也許不是你)。感謝你的提問。我更新了我的。 – buley

回答

3

那麼它肯定似乎是無限遞歸的情況。下面是一些bug的代碼我寫道:

function foo(x) { 
    foo(x+1); 
} 

foo(0); 

而由此導致的異常拋出:

node.js:181 
     throw e; // process.nextTick error, or 'error' event on first tick 
     ^
undefined 

看起來有種熟悉。一旦堆棧被丟棄,跟蹤也一樣。恐怕解決方案涉及到一些很好的舊代碼審查。