问题1:copyWithin的乱用问题
由于鸿蒙开发者很多可能是安卓转的,在安卓侧尤其是kotlin写手觉得copyOfRange很好用,复制数组的某一段数据就用copyOfRange,而copyWithin其实不是同等作用。
下面是AI对copyWithin的解释:
看他给的例子:
可以知道copyWithin完全不是这么用的。跟kotlin的copyOfRange相对应的应该用slice函数。
问题2:ArrayList对象乱用
其实TS里没有内置ArrayList,而ArkTS有这个对象。作用类似Java的ArrayList。
但是有个坑,这个ArrayList在JSON序列化时并不能正常转成json数组,而是变成了json对象。这问题就大了。会导致与预期不一致的效果。其实在Java中ArrayList在json序列化时是正常的json数组,ArkTS的ArrayList应该是JSON库没对其做适配。
推荐ArkTS中的对象数组还是用用中括号[]申明比较合适。操作也容易。