如何让我的页面显示我的函数在完成时而不是在每个函数完成时处理的数据

How do I get my page to display data that my functions process as they finish rather than when every function finishes

本文关键字:函数 完成时 我的 处理 数据 显示      更新时间:2023-09-26

我的doLoad()函数中有 4 个函数,可以扫描文档中的跨度并操作其中的数据。 这些功能非常大,需要花费大量时间。 12秒。

问题是,尽管这些功能彼此独立,但在所有 4 个函数都完成执行之前,它们的工作都不会呈现。

我希望他们在完成执行时显示数据,而不是在所有四个完成后显示数据。我怎样才能做到这一点?

这就是我的 doLoad 函数的样子

function doLoad(){
 ...
 myFunction1();
 myFunction2();
 myFunction3();
 myFunction4();
}

这应该可以解决问题

function doLoad() {
  setTimeout(myFunction1,1);
  setTimeout(myFunction2,2);
  setTimeout(myFunction3,3);
  setTimeout(myFunction4,4);
}

默认情况下,JS 按顺序执行。

如果它们真的是独立的,你可以使用

function doLoad(){
    ...
    setTimeout (myFunction1,5);
    setTimeout (myFunction2,5);
    setTimeout (myFunction3,5);
    setTimeout (myFunction4,5);
}