我有以下课程:
var a = $scope.option.userMap[userId].name;
Run Code Online (Sandbox Code Playgroud)
当userMap中没有值具有userId键时,这会失败.当它尝试执行未定义的.name时会出现错误消息.
有一种简单的方法可以捕捉到这个错误吗?当错误发生时,我希望将变量a设置为"unknown"
是.
try {
var a = $scope.option.userMap[userId].name;
} catch(e) {
//catch a error
} finally {
//execute always
}
Run Code Online (Sandbox Code Playgroud)
关于finallyblock vs return声明:
function something() {
try {
return $scope.option.userMap[userId].name;
} catch(e) {
return e.message
} finally {
alert('Yohoooo!')
}
}
Run Code Online (Sandbox Code Playgroud)
您将始终看到alert调用该something函数的时间.
| 归档时间: |
|
| 查看次数: |
90 次 |
| 最近记录: |