如何使用等效使用any、unknown?-鸿蒙开发者社区-51CTO.COM

如何使用等效使用any、unknown?

接入了很多三方库(ts/js)有很多类型都是any或者unknown,当前强制使用静态类型

HarmonyOS
2024-05-23 22:16:37
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
一杯生椰

静态类型是ArkTS最重要的特性之一。如果程序采用静态类型,即所有类型在编译时都是已知的,那么开发者就能够容易理解代码中使用了哪些数据结构。同时,由于所有类型在程序实际运行前都是已知的,编译器可以提前验证代码的正确性,从而可以减少运行时的类型检查,有助于提升性能。

基于上述考虑,ArkTS中禁止使用any类型。

替代方案:

出于ArkTs语言的性质和设计目标考虑,建议尽可能使用显式声明。

如确实无法得知类型或其他特殊情况,any可用ESObject代替,在编译器的 lib.es5.d.ts文件中可以看到 declare type ESObject = any。

分享
微博
QQ
微信
回复
2024-05-24 22:07:16
相关问题
HarmonyOS ets文件如何使用any
335浏览 • 1回复 待解决
HarmonyOS any类型的使用
681浏览 • 1回复 待解决
clazz: new (...args: any[]) => T 无法使用
554浏览 • 1回复 待解决
ArkTSCheck检查不允许使用any
727浏览 • 1回复 待解决
为什么ArkTS中禁止使用any
1698浏览 • 1回复 待解决
如何等效实现JSONObejct效果?
807浏览 • 1回复 待解决
unknown相关
452浏览 • 1回复 待解决
HarmonyOS ArkTD不支持any如何替换
299浏览 • 1回复 待解决
HarmonyOSArkTS lint的any问题
207浏览 • 1回复 待解决
HarmonyOS Use explicit types instead of "any"
1398浏览 • 1回复 待解决
使用js如何使用callback
510浏览 • 1回复 待解决
HarmonyOS any类型用什么替代
291浏览 • 1回复 待解决