script标签的defer和async及服务器渲染
创始人
2025-01-11 22:06:51
0

1.script标签的async与defer

① async: 异步加载对应的javascript脚本,不阻塞HTML页面的渲染,当对应的javascript加载完成后,如果此时HTML页面还未加载完成,那么会阻塞页面的渲染,等javascript执行完成后再继续HTML页面的加载。这意味着脚本的执行可能发生在页面解析完毕之前或之后,具体取决于脚本下载的速度。如果多个脚本都有 async 属性,它们的执行顺序将是不确定的。

② defer: 异步加载对应的javascript脚本,不阻塞HTML页面的渲染,当对应的javascript加载完成后,如果此时HTML页面还未加载完成,那么不会阻塞页面的渲染,等HTML页面加载完成后再接着执行加载完成的javascript脚本。这个属性的用途是表明脚本在执行时不会影响页面的构造。也就是说,脚本会被延迟到整个页面都解析完毕后再运行。 因此,在