Memory Management & Garbage Collection

From a memory perspective, what's the main difference between these approaches?
// Imperative approach
function processData1(data) {
  let result = [];
  for (let i = 0; i < data.length; i++) {
    if (data[i].value > 100) {
      const processed = transform(data[i]);
      result.push(processed);
    }
  }
  return result;
}

// Functional approach
function processData2(data) {
  return data
    .filter(item => item.value > 100)
    .map(transform);
}
Next Question (40/40)