diamond2221 发表于 2024-10-24 12:06:23

没有什么意义,js的异步的特性没必要去强制为同步。

KDreamelf 发表于 2024-11-24 17:06:54

最好是不要在主线程上卡着,有过脚本把页面卡死的情况。目前来看能异步就异步。使用
``` javaScript
async function wait(num){
    return new promise(
      (resove) => {
            setTimeOut(
                () => {
                resove(1)
                })
            });
```
这是一个比较经典的异步函数调用。如果我们想要获取那个“1”,要么`await wait(0)`,要么`wait(0).then((r => {}`
我们通常想实现的效果是,让当前进程等待一定时间后给用户反馈。那此时我们允许用户做其他操作吗?比方说滚动页面,输入文本等。应该是允许的。只有当前操作不允许重复触发(一般会禁用按钮),或者整个页面显示一个转圈圈。无论哪种情况,在主线程做异步操作都会直接卡死主线程(实践过的),无论是用户操作还是转圈圈(JS特效)都无法进行。直接卡死。用户大概率直接刷新。
所以我们不能让用户觉得自己“卡了”,所以JS才强制把要等的工作丢异步去。
页: 1 [2]
查看完整版本: 如何消除JS异步传染性?