const array = [
{
ratePlanCategory: 'Member',
compareToRate: 'PBBA',
member_price: 100
},
{
ratePlanCategory: 'NoMember',
ratePlanCode: 'PBBA',
public_price: 200
}
{
ratePlanCategory: 'Member',
compareToRate: 'PRBA',
member_price: 100
},
];ratePlanCategory: 'Member', совпадает поле compareToRate с ratePlanCode объекта 'ratePlanCategory: 'NoMember', то взять из этого объекта поле 'public_price: 200' и добавить его в объект с полем ratePlanCategory: 'Member', а потом удалить это поле? compareToRate элементов с ratePlanCategory: 'Member', а значениями — их порядковые номера в исходном массиве.ratePlanCategory: 'NoMember' считывайте значение ratePlanCode, ищите значение в заполненном ранее объекте по этому ключу и так получите номер элемента массива с таким же значением ratePlanCode и ratePlanCategory: 'Member'.public_price из очередной итерации прохождения массива и удалить данное свойство из этой итерации.