This is my attempt to transfer from a row of data from one object to another. I am wondering if there is a more efficient way to do it.
Elements within the list selected_city_codes would be the ones to be transferred from airport_data_2 to airport_data_1.
original data and attempt
airport_data_1 = [{"departure_time":"12:00","arrival_time":"03:00","city_id":"BOS"},
{"departure_time" :"12:00","arrival_time":"03:00","city_id":"BOS"},
{"departure_time" :"01:00","arrival_time":"04:00","city_id":"SFO"},
{"departure_time" :"03:00","arrival_time":"05:00","city_id":"BOS"},
{"departure_time" :"03:00","arrival_time":"05:00","city_id":"SFO"}];
airport_data_2 = [{"departure_time" :"03:00","arrival_time":"05:00","city_id":"DEN"},
{"departure_time" :"04:00","arrival_time":"06:00","city_id":"SJC"},
{"departure_time" :"04:00","arrival_time":"06:00","city_id":"JFK"},
{"departure_time" :"06:00","arrival_time":"09:00","city_id":"SJC"}];
selected_city_codes = ['SJC','JFK']; //items to remove from `airport_data_2` to `airport_data_1`
function move_and_delete_data(obj_1, obj_2,list){
for(i in list) {
for (j in obj_2){
if(list[i] == obj_2[j].city_id){
obj_1.push(obj_2[j]);
}
}
}
for(i in list) {
obj_2 = obj_2.filter(item => item.city_id != list[i]);
}
}
move_and_delete_data(airport_data_1, airport_data_2,selected_city_codes);
Desired Result
airport_data_1 = [{"departure_time":"12:00","arrival_time":"03:00","city_id":"BOS"},
{"departure_time" :"12:00","arrival_time":"03:00","city_id":"BOS"},
{"departure_time" :"01:00","arrival_time":"04:00","city_id":"SFO"},
{"departure_time" :"03:00","arrival_time":"05:00","city_id":"BOS"},
{"departure_time" :"03:00","arrival_time":"05:00","city_id":"SFO"},
{"departure_time" :"04:00","arrival_time":"06:00","city_id":"SJC"},
{"departure_time" :"04:00","arrival_time":"06:00","city_id":"JFK"},
{"departure_time" :"06:00","arrival_time":"09:00","city_id":"SJC"}];
airport_data_2 = [{"departure_time" :"03:00","arrival_time":"05:00","city_id":"DEN"}];
for...inon arrays