json,异步加载,时间线

SON是一种传输数据的格式

JSON.stringify(obj);  obj--string

JSON.parse(str);   string-->obj

      

异步加载js好处:防止因为一个js中一个数据量加载错误,导致整个页面加载不出来。因此使用异步js不操作dom操作。加载工具js

异步加载js三种方法:

1、defer方法

等dom文档全部解析完才会被执行,只有IE浏览器能用该方法,可以引用外部js文件,也可以在里面直接写js代码。

代码:<script type="text/javascript" src = "tools.js" defer = "defer"></script>

2、async方法

只有IE9以下的浏览器不能用,只能加载外部js文件,不能在内部加载js。

代码:<script type="text/javascript" src = "tools.js" async= "async"></script>

3、常用方法,

js加载时间线

1、创建Document对象,解析web页面。此时:document.readyState="loading"

2、遇到link引入的外部css文件,创建线程加载。继续解析文档

3、遇到script引入的外部js文件,加载

4、加载js文档。并设置有defer 或 async 等设置,创建新线程,继续加载。(禁止使用document。write()方法)

5、遇到img ,先加载dom结构,后异步加载src,

6、当文档解析完后,document.readyState="interactive"

7、文档解析完之后,所设置的defer等脚本按顺序执行。

8、当所有加载执行后,document.readyState="complete" , window 触发onload事件。

猜你喜欢

转载自www.cnblogs.com/2016-zck/p/9282135.html
今日推荐