一 加载解析
    js在执行的时候是同步按顺序执行代码,遇到外部引入的js文件就会优先加载js文件,由于文件过大导致阻塞,就不会解析文档dom,导致白屏,空白,影响用户体验。
    可以将js文件放到body后执行,这样在解析的时候优先解析文档dom,并展示,这样用户就可以看到页面的元素。
    虽然把js文件放在后面。但是js文件特别大的时候还是会影响交互体验。
    所以可以使用在script标签中使用defer。

    1. <script defer src='../../js.js' />

    defer: js文件与文档进行异步加载,但是js文件不会执行,等到文档dom解析完毕,才会执行。
    async:与defer都是异步加载, 唯一不同是,是否执行,async是立即执行。

    二 语法优化
    慎用全局变量 :
    有于全局变量是存储在全局执行期上下文中的,当使用全局变量的时候,由于作用域链的原理,会在当前作用查找变量,没有就继续向上查找,每次都需要找到最外层,造成时间上的消耗。