Firebug не показывает трассировку стека для ошибок?

Я заметил, что даже при включении "show stack trace with errors" из раскрывающегося списка появляются только ошибки, которые имеют следы, но когда я это делаю: throw new Error('foo'); Я не вижу трассировки стека, хотя похоже, он появляется в консоли точно так же, как и другие ошибки, такие как iDoNotExist().

Есть ли что-то, что мне не хватает?

Также кажется, что я получаю трассировку стека для вызова console.error('foo');. Одд.

Следует отметить, что при выполнении throw new Error('foo'); throw new Error('foo'); на трассировке Webkit Inspector и Opera происходят следы стека.

Ответы

Ответ 1

Я тестировал этот код в Firebug 1.7.1b2 (FF: 4.0.1, на win7), и он показывает мне трассировку стека:

function a(){
    throw new Error('s');
};

function b(){
    a()
}

b();

Ответ 2

Для других посадочных мест здесь:

Проблема для меня была showStackTrace установлена ​​по умолчанию для Firebug.

Здесь, как включить его:

  • Перейти к about:config в Firefox

  • Измените значение предпочтения extensions.firebug.showStackTrace от false до true (Дважды щелкните, чтобы переключить значение).

Ответ 3

Вы пробовали:

var err = new Error();  
err.name = 'My custom error';
err.message = 'foo';  
throw(err);

Или даже (не всегда работает):

throw 'foo';
throw('foo');