javascript怎么抛出错误?
程序的⾮正常运⾏状态被称为“异常”或“错误”,解释器会为每个错误情形创建并抛出⼀个Error对象,其中包含错误的描述信息。那么如何抛出错误?
javascript 函数在JavaScript中可以使⽤throw语句抛出错误。throw语句⽤来抛出⼀个⽤户⾃定义的异常,当前函数的执⾏将被停⽌(throw之后的语句将不会执⾏),并且控制将被传递到调⽤堆栈中的第⼀个catch块。
如果调⽤者函数中没有catch块,程序将会终⽌。
1、抛出了⼀个值为字符串的异常
throw "Error"; //控制台报错: Uncaught Error
2、抛出了⼀个值为整数13的异常
throw 13; //控制台报错: Uncaught 13
3、抛出了⼀个值为true的异常
throw true; //控制台报错: Uncaught true
4、抛出了⼀个错误对象
throw Error('abc'); //控制台报错: Uncaught Error: abc
throw new Error('abc'); //控制台报错: Uncaught Error: abc
5、应⽤举例:提⽰函数调⽤中的错误
function sum(...number){
var isNum = number.every( v => !isNaN(v));
if(isNum){
return eval(number.join("+")); //数组求和
}else{
throw new Error("参数必须是数字或数字字符串!");
}
}
console.log(sum(1,2,3)); //6
console.log(sum(1,2,'3')); //6
console.log(sum(1,2,'a3')); //报错! Error: 参数必须是数字或数字字符串!
ECMAScript 定义了六种类型的错误:
ReferenceError :不到对象时
TypeError :错误的使⽤了类型或对象的⽅法时
RangeError :使⽤内置对象的⽅法时,参数超范围
SyntaxError :语法写错了
EvalError :错误的使⽤了Eval
URIError :URI错误
除此之外,还可以使⽤Error构造⽅法创建⾃定义的Error对象,并使⽤throw语句抛出该对象。
创建错误
//创建⼀个错误
var err1 = Error("a is undefined!");
var err2 = new Error("a is undefined!");
console.log(typeof err1); //object
console.log(typeof err2); //object
console.log(err1); //输出字符串:'Error: a is undefined!' at test.html:21
console.log(err2); //输出字符串:'Error: a is undefined!' at test.html:21
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论