目前,有一个提案,允许 try...catch 结构中的 catch 语句调用时不带参数。
传统的写法是 catch 语句必须带有参数,用来接收 try 代码块抛出的错误。
try {
// ···
} catch (error) {
// ···
}
新的写法允许省略 catch 后面的参数,而不报错。
try {
// ···
} catch {
// ···
}
新的写法只在不需要错误实例的情况下有用因此不急传统写法的用途广。
let jsonData;
try {
jsonData = JSON.parse(str);
} catch {
jsonData = DEFAULT_DATA;
}
上面代码中,JSON.parse 报错只有一种可能:解析失败。因此,可以不需要抛出错误实例。