如何从多个数据中 Select 满足条件的数据.

I'm not good at using maps and filters. 如何从多个数据中 Select 满足条件的数据.

Shampledata

[
    {
        "dataList": [
            {
                "date": "2022-09-01T15:00:00Z",
                "friendsIds": []
            },
            {
                "date": "2022-09-02T15:00:00Z",
                "friendsIds": []
            },
            {
                "date": "2022-09-03T15:00:00Z",
                "friendsIds": []
            },
            {
                "date": "2022-09-04T15:00:00Z",
                "friendsIds": [
                    6
                ]
            },
            {
                "date": "2022-09-05T15:00:00Z",
                "friendsIds": [
                    7,8,10
                ]
            },
            {
                "date": "2022-09-06T15:00:00Z",
                "friendsIds": [
                    8
                ]
            },
            {
                "date": "2022-09-09T15:00:00Z",
                "friendsIds": [
                    9
                ]
            },
        ]
    }
]

我想要在朋友不空的时候得到第一次. 然而,获得了最后一次. 而且有一个类型错误.

  const sample = React.useMemo(() => {
    let arr[]:string[];
    Shampledata[0].dataList.map((list) => {
      if(list.friends.length > 0) {
        结果 = list.date;
        return 结果;
      }
    });
    return 结果;
  }, [Shampledata]);

 console.log(sample);

结果

2022-09-09T15:00:00Z

期望

2022-09-04T15:00:00Z

推荐答案

为此,请使用array.find:

  const sample = React.useMemo(() => {
    return sampleData[0].dataList.find(x => x.friends.length)?.date
  }, [sampleData]);

Javascript相关问答推荐

有Angular 的material .未应用收件箱中的价值变化

有什么(最佳)方法可以从模块中获取脚本模块的多姆元素吗?

vscode扩展-webView Panel按钮不起任何作用

if/else JavaScript中的条件行为

浮动Div的淡出模糊效果

引用在HTMLAttributes<;HTMLDivElement>;中不可用

你怎么看啦啦队的回应?

为什么Mutations 观察器用微任务队列而不是macrotask队列处理?

使用ThreeJ渲染的形状具有抖动/模糊的边缘

将核心模块导入另一个组件模块时存在多个主题

提交链接到AJAX数据结果的表单

如何将innerHTML字符串修剪为其中的特定元素?

如何将数据块添加到d3力有向图中?

将Node.js包发布到GitHub包-错误ENEEDAUTH

Jest toHaveBeenNthCalledWith返回当前设置的变量值,而不是调用时的值

如何在我的Next.js项目中.blob()我的图像文件?

如何在Java脚本中对列表中的特定元素进行排序?

如何更改Html元素S的 colored颜色 ,然后将其褪色为原始 colored颜色

使用Perl Selify::Remote::Driver执行Java脚本时出错

如果查询为空,则MongoDB将所有文档与$in匹配