HarmonyOS 数组中对象的排序

1、有个对象数组,每个对象中有时间戳,现在需要根据时间戳在数组中进行排序如何实现?

2、基于1的问题,如果是集合中的对象,在集合中如何根据时间排序?

3、数组和集合之间如何来回转换?

HarmonyOS
2024-12-25 12:17:47
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
fox280

通过sort方法排序。可参考示例如下。另外HarmonyOS没有集合的概念,参考官方文档数据类型,只有Array数组,文档地址:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/introduction-to-arkts-V5#%E7%B1%BB%E5%9E%8B

class xx {
  time: number = 0;
  name: string = "";
}

@Entry
@Component
struct ArrayTest {
  build() {
    Row() {
      Column() {
        Button("sort").onClick(() => {
          const arr: xx[] = [
            { time: 1536282400000, name: 'Alice' },
            { time: 1536281200000, name: 'Bob' },
            { time: 1536280400000, name: 'Charlie' },
          ];
          const sortedArr = arr.sort((a, b) => a.time - b.time); //升序排序
          console.log(JSON.stringify(sortedArr));
          const sortedArr2 = arr.sort((a, b) => b.time - a.time); //降序排序
          console.log(JSON.stringify(sortedArr2));
        })
      }.width('100%')
    }.height('100%')
  }
}
分享
微博
QQ
微信
回复
2024-12-25 14:07:47
相关问题
HarmonyOS 对象数组排序问题
312浏览 • 1回复 待解决
ArkTS如何自定义数组对象排序规则
337浏览 • 1回复 待解决
HarmonyOS 将json对象按照 ASCII 排序
838浏览 • 1回复 待解决
HarmonyOS 如何对两个对象进行排序
337浏览 • 1回复 待解决
HarmonyOS @State可以修饰对象数组
209浏览 • 1回复 待解决
HarmonyOS 数组对象数据刷新
349浏览 • 1回复 待解决
如何判断一个对象是否在对象数组
2709浏览 • 1回复 待解决
HarmonyOS @state可以修饰对象数组
213浏览 • 1回复 待解决
mysql 对于中文+数字排序
3875浏览 • 1回复 待解决
如何监听数组对象属性变化
2671浏览 • 1回复 待解决
根据list某项id如何sort排序
742浏览 • 1回复 待解决