Для решения этой задачи тебе нужно написать 2 ф-ции:
1. это ф-ция глубокого копирования.
2. собственно та, которой ты будешь изменять новый массив объектов.
Вот первую задачу ты решай сам, а вторая будет выглядеть как то так:
const result = (arr) => {
  return arr.map((i) => {
    if (i.type === 'pineapple') i.price *= 2; 
    return i;
  });
};
ps: если разрешено использование сторонних либ, поищи глубокое клонирование в lodash.
pss: объедени ф-цию с первого поста с этой и будет результат. Только подумай что в первой нужно модифицировать.