Почему в объекте Response находится promise?

Всем привет. Интересует следующее: обработав массив промисов с помощью Promise.all мы получаем массив значении каждого промиса, то есть массив с Response, почему при декодирование каждого Response мы получаем новый массив промис, который обрабатывается в новой функции Promise.all и возвращает уже нам объект от каждого промиса? Вопрос в следующем: почему Response хранит в себе новый промис, а не сразу объект, чтобы при декадирование был объект, а не промис как это ,бывает, когда работаешь с одним промисом.

Массив промисов:

const TODOS_URL = 'https://jsonplaceholder.typicode.com/todos';
const getTodosByIds = async (ids) => {
    try {
    const requests = ids.map((id) => fetch(`${TODOS_URL}/${id}`)); 


    const responses = await Promise.all(requests);
    console.log('responses', responses)
  
    const allTasks = await Promise.all(responses.map((data) => data.json())); 
    console.log('allTasks', allTasks);
    } catch (error) {
        console.error(error);
    }
};


getTodosByIds([43, 21, 55, 100, 10]);

Один промис:

const TODOS_URL = 'https://jsonplaceholder.typicode.com/todos';
const result = fetch(TODOS_URL)
    .then(response => response.json())
    .then(data => console.log(data))


Ответы (0 шт):