let arrOne = [
    {city: '111', price: 1},
    {city: '222', price: 2},
];
let arrTwo = [
    {city: '111', price: 0},
    {city: '333', price: 0},
    {city: '444', price: 0},
];
function mergeArray(a1, a2){
    let check = a1.map( el1 => el1.city );
    let a2filtered = a2.filter( el2 => !check.includes(el2.city) );
    return a1.concat(a2filtered);
}
console.log( mergeArray(arrOne, arrTwo) );