Параллельная загрузка данных в браузер - PullRequest
1 голос
/ 16 февраля 2020

У нас есть скрипт, который загружает некоторые данные с сервера.

'use strict';

let data;           // Here will be stored data from server
let url = '...';    // Here some correct URL

(async () => {

    let response = await fetch(url);    // Load response
    data = await response.text();       // Load full data and save as text

    // Some work with data from server

})();

// The enormous script below

В asyn c IIFE fetch() создает новое обещание, а последнее отправляется в очередь для микрозадачи . И он выскочит из этой очереди только после выполнения полного скрипта. Понятно, что такое поведение является причиной для использования обещаний.

ВОПРОС:

Будет ли загрузка данных go параллельной выполнению кода JavaScript, который находится ниже IIFE, а чем будут выполнять задачи (обещания) из очереди микрозадач ? Или вначале выполнит код JavaScript, который находится ниже IIFE, затем данные будут загружены с сервера и, наконец, выполнят микротрубы?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...