Comments 11
А в какую категорию попадает stack owerflow? :)
Простейший способ вручную спровоцировать ошибку – при помощи оператора throw:
throw 'Invalid input';
В таком случае автоматически создается экземпляр объекта Error с сообщением “Invalid input”
Это неправда, никакого объекта Error
в данном случае не будет создано:
Welcome to Node.js v19.0.0.
Type ".help" for more information.
> try { throw 'foobar' } catch (e) { console.log(typeof e) }
string
Не стоит вообще никогда выбрасывать ничего, кроме Error
и его наследников. Ничего хорошего, кроме проблем, от этого поиметь обычно невозможно.
Не стоит вообще никогда выбрасывать ничего, кроме
Error
и его наследников. Ничего хорошего, кроме проблем, от этого поиметь обычно невозможно.
У меня есть основания полагать, что выбросить строку будет быстрее по производительности, чем создать объект с ошибкой
Другой вопрос, что если ошибка вылетает часто, то что-то явно идет не так. И в реальном коде выигрыш будет не очень заметен
prettyMessage() { return `ValidationError: [${this.fields} ]
я так понимаю имелось ввиду this.field
у меня со всякими промисами и замыканиями вечно борода какая-то)) параметров куча когда путаюсь
Анатомия ошибки в JavaScript