浓缩解读前端系列书籍

《高性能JavaScript》读书笔记①加载和执行

2016-09-17  本文已影响112人  梁同学de自言自语

JavaScript的加载和执行(Loading and Execution)

JavaScript的阻塞特性

JavaScript阻塞特性的思考

实现Noblocking Scripts(无阻塞的脚本)的几种方式

//创建XMLHttpRequest对象
var xhr = new XMLHttpRequest();
//通过GET请求加载file1.js
xhr.open("get","file1.js",true);
//通过XHR对象的onreadystatechange()方法监听readState属性的变化
xhr.onreadystatechange = function(){
//readyState属性表示XHR对象请求的就绪状态:0-请求未初始化;1-请求已建立;2-请求已发送;3-请求处理中;4-响应已完成
if(xhr.readyState == 4){
//status属性表示HTTP请求的状态码:200-(OK)请求成功;304-(Not Modified)从缓存中读取;状态码小于300都表示请求成功
if(xhr.status >= 200 && (xhr.status < 300 || xhr.status == 304)){
//创建script元素
var script = document.creatElement("script");
//指定元素的type属性
script.type = "text/javascript";
//将response响应内容填充到script元素中
script.text = xhr.responseText;
//当把script元素添加到body时,js代码会被立即执行
document.body.appendChild(script);
}
}
}
```

上一篇 下一篇

猜你喜欢

热点阅读