[Typescript Unit testing] Error Handling with Unknown
typescript Error with Testing unknown unit Handling
2023-09-14 08:59:13 时间
function somethingRisky() {} try { somethingRisky() } catch(err: unknown) { if (err instanceof Error) { console.log(err.stack) } else { console.log(err) } }
Force to handle edge cases.
Type assertion:
function somethingRisky() {} // if err is an Error, then it is fine // if not, then throw function assertIsError(err: any): asserts err is Error { if (!(err istanceof Error)) throw new Error(`Not an error: ${err}`) } try { somethingRisky() } catch(err: unknown) { assertIsError(err); console.log(err) }
相关文章
- Typescript: Getting Started
- Create Your Own Redux (Typescript)
- TypeScript高级类型-Partial
- 【TypeScript】的安装方式
- typeScript:exports is not defined
- 快速掌握 TypeScript 新语法:infer extends
- TypeScript 深水区:3 种类型来源和 3 种模块语法
- TypeScript超详细入门教程(上)
- 一旦你学习了typescript,你就再也放不下了
- TypeScript 类型体操:提取对象指定 key 并设置为必填
- typescript [接口]
- Typescript学习笔记,从入门到精通,持续记录
- TypeScript查漏补缺(基础类型)
- adobe安装错误Error:SyntaxError:JSON Parse error:Unexpected EOF
- 在TypeScript中使用装饰器
- MySQL Error number: 3030; Symbol: ER_SLAVE_WORKER_STOPPED_PREVIOUS_THD_ERROR; SQLSTATE: HY000 报错 故障修复 远程处理
- MySQL Error number: 3783; Symbol: ER_GR_HOLD_MEMBER_STATUS_ERROR; SQLSTATE: HY000 报错 故障修复 远程处理
- MySQL Error number: 4003; Symbol: ER_DA_ERROR_LOG_MULTIPLE_FILTERS; SQLSTATE: HY000 报错 故障修复 远程处理
- MySQL Error number: MY-010239; Symbol: ER_MYISAM_CRASHED_ERROR_IN; SQLSTATE: HY000 报错 故障修复 远程处理
- MySQL Error number: MY-010255; Symbol: ER_CONN_TCP_ERROR_WITH_STRERROR; SQLSTATE: HY000 报错 故障修复 远程处理
- MySQL Error number: MY-010492; Symbol: ER_NDB_BINLOG_ERROR_INFO_FROM_DA; SQLSTATE: HY000 报错 故障修复 远程处理
- MySQL Error number: MY-010556; Symbol: ER_RPL_SLAVE_ERROR_RETRYING; SQLSTATE: HY000 报错 故障修复 远程处理
- MySQL Error number: MY-011077; Symbol: ER_ERROR_DURING_FLUSH_LOG_COMMIT_PHASE; SQLSTATE: HY000 报错 故障修复 远程处理
- MySQL Error number: MY-011480; Symbol: ER_GRP_RPL_PROCESS_INTERSECTION_GTID_SET_ERROR; SQLSTATE: HY000 报错 故障修复 远程处理
- MySQL Error number: MY-011709; Symbol: ER_GRP_RPL_SQL_SERVICE_MAX_CONN_ERROR_FROM_SERVER; SQLSTATE: HY000 报错 故障修复 远程处理
- MySQL Error number: MY-013595; Symbol: ER_WARN_TLS_CHANNEL_INITIALIZATION_ERROR; SQLSTATE: HY000 报错 故障修复 远程处理
- MySQL Error number: MY-013661; Symbol: ER_UDF_REGISTER_SERVICE_ERROR; SQLSTATE: HY000 报错 故障修复 远程处理
- TypeScript 4.4 RC 发布