After the join node use a function node with something like:
const input = msg.payload
const dataMap = {};
input.speed.forEach(item => {
dataMap[item.Date] = item;
});
input.availability.forEach(availabilityItem => {
const speedItem = dataMap[availabilityItem.Date];
if (speedItem) {
Object.assign(availabilityItem, speedItem);
}
});
msg.payload = input.availability;
return msg;
note the correct terminology is 'merge' for this use case.