9个要改掉的TypeScript坏习惯
为了提升TypeScript技能并避免常见的坏习惯,以下是九个需要改掉的坏习惯,帮助你编写更高效和规范的代码。
1. 不使用严格模式
错误做法: 不启用tsconfig.json中的严格模式。
正确做法: 启用严格模式。
原因: 更严格的规则有助于未来代码的维护,修复代码的时间会得到回报。
2. 使用 || 确定默认值
错误做法: 使用 || 处理可选值。
正确做法: 使用 ?? 运算符或在参数级别定义默认值。
原因: ?? 运算符只对 null 或 undefined 进行回退,更加精确。
3. 使用 any 作为类型
错误做法: 使用 any 类型处理不确定的数据结构。
正确做法: 使用 unknown 类型。
原因: any 禁用类型检查,可能导致错误难以捕获。
4. 使用 val as SomeType
错误做法: 强制编译器推断类型。
正确做法: 使用类型守卫。
原因: 类型守卫确保所有检查都是明确的,减少潜在错误。
5. 在测试中使用 as any
错误做法: 在测试中创建不完整的替代品。
正确做法: 将模拟逻辑移到可重用的位置。
原因: 避免在多个测试中重复更改属性,保持代码整洁。
6. 可选属性
错误做法: 将属性定义为可选。
正确做法: 明确表达属性的组合。
原因: 更明确的类型可以在编译时捕获错误。
7. 单字母泛型
错误做法: 使用单字母命名泛型。
正确做法: 使用描述性的类型名称。
原因: 描述性名称提高可读性,便于理解。
8. 非布尔判断
错误做法: 直接将值传递给 if 语句。
正确做法: 明确检查条件。
原因: 使代码逻辑更清晰,避免误解。
9. 感叹号操作符
错误做法: 使用 !! 将非布尔值转换为布尔值。
正确做法: 明确检查条件。
原因: 提高代码可读性,避免混淆。
作者:叶知秋水
来源:juejin.cn/post/7451586771781861426
来源:juejin.cn/post/7451586771781861426