javascript中用throw抛出异常时不能用数字??如throw new Error("12")

try{ eval("a++b")  }catch (err){    if(err instanceof SyntaxError){  throw new Error("12")  }  else{   alert('44')   }         }如这个代码片断,当throw new Error("12")这样时就不能正常抛出,显示"未指明的错误" 而throw new Error("abc")这样就可以抛出abc的错误信了 为什么会这样呢??

你应该学过定义变量吧。如 int a = 5. 如在js里 var abc ="aaaa" ,但是你要是定义var 123="aaaa";肯定不行吧,js的变量名命名规则是:变量必须以字母或下划线开始。
你throw new Error里面的参数就是一个变量,指向可能会报出的异常,变量名定义为44肯定是错的。
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-03-13
var e = new Error();
e.message = 12;
throw e;本回答被提问者和网友采纳
相似回答