HarmonyOS 鸿蒙Next有类似于iOS里面的扩展机制么,想给string扩展方法

发布于 1周前 作者 itying888 来自 鸿蒙OS

HarmonyOS 鸿蒙Next有类似于iOS里面的扩展机制么,想给string扩展方法

有类似于iOS里面的扩展机制么,想给string扩展方法

3 回复

不行的,js本身其实是支持的,比如这样:

String.prototype.capitalize = function() {
    return this.charAt(0).toUpperCase() + this.slice(1);
};
//使用
console.log(myString.capitalize()); <button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>

但是鸿蒙给限制了,很多js本来支持的功能都限制了。

官方的说法是:进一步通过规范强化静态检查和分析,使得在程序开发期能检测更多错误,提升程序稳定性,并实现更好的运行性能。

参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-migration-background-V5

回复也太快了,感谢大佬

HarmonyOS(鸿蒙)提供了丰富的API和框架支持开发者进行应用开发,包括扩展现有类型的功能。对于想给string扩展方法的需求,HarmonyOS 支持通过Kotlin或Java的扩展函数(Extensions)机制来实现,这与Kotlin语言特性中的扩展函数类似,允许你为现有类添加新的方法,而无需继承该类或使用任何类型的设计模式。

在Kotlin中,你可以直接在类外部定义扩展函数,就像它们是类的一部分一样。对于Java,虽然不能直接扩展方法,但可以通过工具类(Utility Class)或装饰器(Decorator)模式来实现类似的功能。

如果问题依旧没法解决请加我微信,我的微信是itying888。

回到顶部