javascript - 将过滤器中的数组元素与另一个数组的其他元素进行比较
问题描述
我尝试显示一行'可用性,但我想排除可用性与另一个数组中元素的值相似的值'日期'
开始时间结束时间和持续时间
- 如何将它们与“日期”数组的其他元素进行比较?
- 例如,如何仅比较一个特定值只是持续时间?
var date: [{
client: 'jessica',
start: '10:00',
end: '10:30',
duration: 30,
},
{
client: 'joe',
start: '11:00',
end: '12:00',
duration: 60,
}
],
var availabilities: [{
start: '10:00',
end: '10:30',
duration: 30,
},
{
start: '11:00',
end: '12:00',
duration: 60,
},
{
start: '12:00',
end: '13:00',
duration: 60,
},
{
start: '13:00',
end: '14:00',
duration: 60,
},
],
{
disponibilitie.filter(availabilities =>
availabilities.start !== date.start &&
availabilities.end !== date.end &&
availabilities.duration !== date.duration).map((availabilities) => {
return ( <option value = {
availabilities.duration
} >
{
availabilities.start
} - {
availabilities.end
} </option>
)
})
}
预期结果:{开始:'12:00',结束:'13:00',持续时间:60,js
解决方案
1 - 如何将它们与“日期”数组的其他元素进行比较?
availabilities.filter((el) => {
return date.some((f) => {
return el.start === f.start && el.end === f.end && el.duration === f.duration;
});
});
2-例如,如何仅比较一个特定值只是持续时间?
availabilities.filter((el) => {
return date.some((f) => {
return el.duration === f.duration;
});
});
你可以加 ”!” 如果您想要不匹配的项目,请在“date.some”之前。
推荐阅读
- arrays - 如何在 Swift 中从文件中刷新数组的内容?
- php - 无法让 nginx 使用 php7-fpm 刷新缓冲区
- oracle-cloud-infrastructure - 是否有可用于 Oracle Cloud VM.Standard.E2.1 实例的 SSD 存储?
- python - 如何为 python 安装 cairo 和 rsvg
- c - 尝试释放数组内存时出现“free(): invalid next size (fast)”错误
- python - Pyplot/Matplotlib:x 轴上带有字符串的二进制数据
- json - 解析错误:第 1 行第 6 列的数字文字无效
- python - 使用下拉列表过滤项目
- javascript - ContentChildren 始终为空,因此不会调用交叉点观察者
- javascript - 如何确定 Angular 路由重定向的来源?