使用JavaScript try / catch,不处理catch错误消息的干净方法是什么?

时间:2019-02-14 15:13:31

标签: javascript typescript

我有一个try / catch JavaScript / TypeScript,如下所示:

import ls from 'local-storage';

let user;

try {
  user = ls.get('userInfo');
} catch (e) {
  user = {};
}

在某些情况下,ls.get()返回无效的JavaScript(这是正常现象),并且我不想报告或记录该错误,我只想将用户设置为{},因为m显示在上方。

也就是说,当本地存储为空时,ls.get会引发错误,我想确保我能处理这种情况并捕获引发的异常。

是否有一种干净或更好的语法可以做到这一点?如果我只说catch(),我会得到一个错误。

1 个答案:

答案 0 :(得分:2)

除了评论中所说的那样,我认为您正在尝试使用ECMAScript规范(或JS规范)中没有但很快就会使用的某些东西:enter image description here

直到,如果您没有错误的参数(或绑定变量),则会收到错误消息。您可以将catch代码块留为空白,

let user;

try {
  user = ls.get('userInfo');
} catch (err) {}

编辑:根据Optional Catch Binding

,应该在今年(“预期的出版年”)开始进行可选的渔获绑定。