gpt4 book ai didi

javascript - JS : How to filter after map

转载 作者:行者123 更新时间:2023-11-30 20:07:05 24 4
gpt4 key购买 nike

我不想在 map 之后显示相同格式的日期时间。你们知道从此处的结果 View 中删除相同的 YYYY- MM-DD ddd 的想法吗?

<Body>
<Title>Choose Datetimes</Title>
{eventType.availableDatetimes.map(d => (
<styles.ListItem key={String(d)} onClick={() => onClick(d)}>
<TouchRipple>
<styles.StyledCard selected={Number(d) === Number(selectedDate)}>
{d.format('YYYY-MM-DD ddd')}
</styles.StyledCard>
</TouchRipple>
</styles.ListItem>
))}
</Body>

我想在这里加入同一个日期时间组。我想改变来自:

2018-10-14 sun
2018-10-14 sun
2018-10-14 sun
2018-10-14 sun
2018-10-15 mon
2018-10-15 mon
2018-10-15 mon

到:

2018-10-14 sun
2018-10-15 mon

最佳答案

假设内容日期会有不同的时间,但您的唯一性逻辑只是描述格式的日期,

const filterDateByUniqueDate = (dates) =>{
const resultSet = {};
return dates.filter(d =>{
let dFormat = d.format('YYYY-MM-DD ddd');//ddd is not needed
if(!resultSet[dFormat]){
resultSet[dFormat] = d;
return true;
}
return false;
});

}


//assuming react code but should be ok with any component based
....


render(){

....
const dateOptions = this.filterDateByUniqueDate(eventType.availableDatetimes); //us
<Body>
<Title>Choose Datetimes</Title>
{dateOptions.map(d => (
<styles.ListItem key={d.toString()} onClick={() => onClick(d)}>
<TouchRipple>
<styles.StyledCard selected={Number(d) === Number(selectedDate)}>
{d.format('YYYY-MM-DD ddd')}
</styles.StyledCard>
</TouchRipple>
</styles.ListItem>
))}
</Body>

关于javascript - JS : How to filter after map,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52803185/

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