1)js放在head里面,会堵塞DOM的生成。使用就无法获取通过选择器获取DOM元素进行操作。2) 代浏览器除了dom解析完成之后渲染外,为了提高用户体验,会有个first paint。部分内容将被解析并显示,也就是浏览器能够渲染不完整的dom。(如果js放在head里面,就不会出现DOM,所以无法提前渲染,而且提前渲染的前提是发送请求,同步的JS只会卡死GUI渲染,就算发生了 paint ,也不会渲染到界面上) 发送请求,浏览器会等待加载完毕 例子:VUE v-cloak指令解决闪动问题