怎么样
throw
{
name: 'type error',
message: 'provide numeric value'
};
时语法不正确
throw{
name: 'type error',
message: 'provide numeric value'
};
语法是否正确?
是否真的有必要使用throw附加花括号?为什么?
答案 0 :(得分:6)
出于某种原因,在单独的throw
关键字之后,分号总是inserted,即使您自己无法合法地拥有throw
语句,所以您得到的是这样:
throw;
{
name: 'type error',
message: 'provide numeric value'
};
会导致语法错误。
对于它的价值,C#(与JS一样,也基于ECMA标准)确实支持throw;
语句作为rethrow an exception的方式。也许他们将来会对ECMAScript进行改进,以支持类似的功能。但这只是我的猜想。