gpt4 book ai didi

Javascript/React - 获取数组中匹配特定条件的第一项

转载 作者:行者123 更新时间:2023-12-02 19:25:55 25 4
gpt4 key购买 nike

我有一个数组,比如说

[
{
lesson: 1,
title: "Welcome",
slug: "welcome",
active: active,
breakDay: false,
started_time: new Date(),
finished_time: null,
completed: true,
sublesson: [
{
lesson: 1.1,
title: "Evaluation",
slug: 'evaluation',
completed: false,
answers: []
}
],
answers: []
},
{
lesson: 2,
title: "Example",
slug: "example",
active: active,
breakDay: false,
started_time: null,
finished_time: null,
completed: false,
sublesson: [
{
lesson: 2.1,
title: "example2,
slug: 'example2,
answers: []
}
],
answers: []
}
]

我需要找到一种方法来绘制第一个项目以达到特定条件。

我在我的 React 应用程序中尝试过,但很快意识到它实际上是在检查第一个项目而不是整个数组的这些条件是否为真。

    {
lessons !== null ?

lessons.map((item, index, arr) => (
index === 0 && item.active === true ?
<>
<p>{item.title}</p>
</>
:
null
))
:
null

}

本质上,如何过滤第一个项目以满足特定条件,例如 item.active === true && item.completed === false

最佳答案

您可能需要此处的过滤器:

var data=[ { lesson: 1, title: "Welcome", slug: "welcome", active: 'active', breakDay: false, started_time: new Date(), finished_time: null, completed: true, sublesson: [ { lesson: 1.1, title: "Evaluation", slug: 'evaluation', completed: false, answers: [] } ], answers: [] }, { lesson: 2, title: "Example", slug: "example", active: 'active', breakDay: false, started_time: null, finished_time: null, completed: false, sublesson: [ { lesson: 2.1, title: "example2", slug: 'example2', answers: [] } ], answers: [] }];

var result = data.filter(({active, completed})=> active && !completed);

console.log(result);

或者find来获取第一个匹配的对象:

var data=[ { lesson: 1, title: "Welcome", slug: "welcome", active: 'active', breakDay: false, started_time: new Date(), finished_time: null, completed: true, sublesson: [ { lesson: 1.1, title: "Evaluation", slug: 'evaluation', completed: false, answers: [] } ], answers: [] }, { lesson: 2, title: "Example", slug: "example", active: 'active', breakDay: false, started_time: null, finished_time: null, completed: false, sublesson: [ { lesson: 2.1, title: "example2", slug: 'example2', answers: [] } ], answers: [] }];

var result = data.find(({active, completed})=> active && !completed);

console.log(result);

关于Javascript/React - 获取数组中匹配特定条件的第一项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62403379/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com