鸿蒙高质量代码静态检测200条二
2024-11-12 19:06 由
龙儿筝 发表于
#移动端开发
- @typescript-eslint/no-unnecessary-type-arguments
- @typescript-eslint/no-unnecessary-type-assertion
- @typescript-eslint/no-unnecessary-type-constraint
- @typescript-eslint/no-unused-expressions
- @typescript-eslint/no-unused-vars
- @typescript-eslint/no-useless-constructor
- @typescript-eslint/prefer-enum-initializers
- @typescript-eslint/prefer-for-of
- 强制使用“for-of”循环而不是标准“for”循环
- @typescript-eslint/prefer-function-type
- @typescript-eslint/prefer-includes
- 强制使用“includes”方法而不是“indexOf”方法
- @typescript-eslint/prefer-nullish-coalescing
- @typescript-eslint/prefer-optional-chain
- 强制使用链式可选表达式,而不是链式逻辑与、否定逻辑或、或空对象
- @typescript-eslint/prefer-readonly
- 如果私有成员从未在构造函数之外进行修改,则要求将其标记为“只读”
- @typescript-eslint/prefer-readonly-parameter-types
- 要求将函数参数解析为“只读”类型,以防止参数被修改而产生一些副作用
- @typescript-eslint/prefer-reduce-type-parameter
- 调用“Array#reduce”时推荐使用类型参数而不是强制转换类型
- @typescript-eslint/prefer-regexp-exec
- 如果未提供全局标志,推荐使用RegExp#exec”,而不是“String#match”
- @typescript-eslint/prefer-string-starts-ends-with
- 强制使用“String#startsWith”和“String#endsWith”而不是其他检查子字符串的等效方法
- @typescript-eslint/promise-function-async
- 要求任何返回Promise的函数或方法标记为async
- @typescript-eslint/quotes
- @typescript-eslint/require-array-sort-compare
- 要求调用“Array#sort”时,始终提供“compareFunction”
- @typescript-eslint/require-await
- @typescript-eslint/restrict-plus-operands
- 要求加法的两个操作数都是相同的类型,并且是“bigint”、“number”或“string”
- @typescript-eslint/restrict-template-expressions
- @typescript-eslint/return-await
- @typescript-eslint/semi
- 要求或不允许使用分号,例如never不允许使用分号,always允许使用分号
"@typescript-eslint/semi": [
"error",
"never"
]
- @typescript-eslint/space-before-function-paren
- @typescript-eslint/space-infix-ops
- @typescript-eslint/strict-boolean-expressions
- @typescript-eslint/switch-exhaustiveness-check
- 要求switch语句对于联合类型中值的判断是详尽无遗的
- @typescript-eslint/triple-slash-reference
- 不允许某些三斜杠引用,推荐使用ES6风格的导入声明
- @typescript-eslint/type-annotation-spacing
- @typescript-eslint/typedef
- @typescript-eslint/unbound-method
- @typescript-eslint/unified-signatures
- 如果两个重载函数可以用联合类型参数(|)、可选参数(?)或者剩余参数(...)来重构成一个函数,不允许使用重载
- prefer-const
- eqeqeq
- @security/no-commented-code
- 不使用的代码段建议直接删除,不允许通过注释的方式保留
- @security/no-cycle
- @security/no-unsafe-aes
- 该规则禁止在AES加密算法中使用不安全的ECB加密模式,推荐使用Petal Aegis SDK中的安全AES接口
- @security/no-unsafe-dh
- @security/no-unsafe-dh-key
- @security/no-unsafe-dsa
- @security/no-unsafe-dsa-key
- @security/no-unsafe-ecdsa
- 该规则禁止在ECDSA签名算法中使用不安全的SHA1摘要算法,推荐使用Petal Aegis SDK中的安全ECDSA接口
- @security/no-unsafe-hash
- @security/no-unsafe-mac
- 该规则禁止在MAC消息认证算法中使用不安全的哈希算法
- @security/no-unsafe-rsa-encrypt
- @security/no-unsafe-rsa-key
- @security/no-unsafe-rsa-sign
- @performance/high-frequency-log-check