2015-04-24 2 views
0

У меня есть приложение-экспресс. Кажется, что глобальный объект Error не определен.Ошибка объекта undefined для экспресс-приложения

console.log(Error) дает «неопределенными», и console.log(JSON.stringify(new Error('error message')) дает {}

Поскольку объект Error не определен, я не могу вернуть ошибки как этот

return next(new Error('error message!') 

Возможно ли, что объект Error переименовывается или что-то? Есть ли работа вокруг этого?

(я использовал IntelliJ Idea построить экспресс-приложение.)

Любая помощь будет оценена.

+0

Вы должны делать что-то неправильно - это невозможно **, что 'console .log (Ошибка) 'prints * undefined * в то же время' console.log (JSON.stringify (новая ошибка ('сообщение об ошибке')) 'prints' {} '- это поведение является взаимоисключающим - вы должны увидеть error about * undefined не является функцией *. –

ответ

1

Объект ошибки не определен. Если бы это было, это было бы бросить TypeError:

console.log(JSON.stringify(new Error('error message'))); 

Вместо этого она возвращается пустой объект, потому что это то, что V8 возвращается, если вы отправляете объект Error в JSON.stringify(). Я не уверен, что это особенность или ошибка или нет, но независимо от того, что это даст вам результат:

console.log(new Error('error message')); 
+0

Да, это был вопрос спасибо за ответ :) – user3136769

Смежные вопросы