抛出错误

抛出错误意味着异常,如果未处理任何异常,则节点服务器将崩溃。

以下行抛出错误:

throw new Error("Some error occurred"); 

要么

var err = new Error("Some error occurred");
throw err;

要么

throw "Some error occurred";

最后一个例子(抛出字符串)不是好习惯,不推荐(总是抛出错误,这是 Error 对象的实例)。

请注意,如果你发现错误,那么系统将在该行上崩溃(如果没有异常处理程序),则该行之后不会执行任何代码。

var a = 5;
var err = new Error("Some error message");
throw err; //this will print the error stack and node server will stop
a++; //this line will never be executed
console.log(a); //and this one also

但在这个例子中:

var a = 5;
var err = new Error("Some error message");
console.log(err); //this will print the error stack
a++; 
console.log(a); //this line will be executed and will print 6