Javascript文本文件加载延迟
Javascript text file loading delay
我正在用这个简单的方法加载位于服务器上的。txt文件:
function getFileFromServer(url, doneCallback)
{
console.time("getFileFromServer");
var xhr;
xhr = new XMLHttpRequest();
xhr.onreadystatechange = handleStateChange;
xhr.open("GET", url, true);
xhr.send();
function handleStateChange() {
if (xhr.readyState === 4) {
doneCallback(xhr.status == 200 ? xhr.responseText : null);
}
}
console.timeEnd("getFileFromServer");
}
我用这种简单的方式使用它,根据这篇文章:从服务器读取文本文件,将其写入网站
function loadFile( url ) {
console.time("loadFile");
getFileFromServer(url, function(text) {
if (text === null) {
console.log("error-loading-file");
}
else {
console.timeEnd("loadFile");
doStuff(text);
}
});
你可以看到,我已经把控制台。是时候跟踪时间了。下面是浏览器控制台的回答:
getFileFromServer: 1.744
女士loadFile: 18114.871
女士我不是javascript专家,我唯一能解释时间差异的是参数传递(c++中的值与引用)。有人能解释一下时间上的不同吗?
getFileFromServer
完成得非常快的原因是没有真正的处理完成。函数不会等到请求从服务器返回,但是只在请求返回时注册回调函数。这意味着发送请求需要1.744ms,仅此而已。
loadFile
函数测量发送请求和实际获得响应之间的时间。
相关文章:
- 延迟加载jquery后替换$(document).ready(function)
- 延迟加载背景图像时防止双重请求
- 延迟加载 脚本加载和/或执行
- 使jquery延迟加载插件在视口内工作
- 如何在水平滚动 Jquery 上实现延迟加载
- 如何使用angularjs延迟加载谷歌jsapi图表
- 使用requirejs对延迟加载成员模块进行Typescript
- 淘汰具有延迟加载的多选下拉列表
- Kendo UI树视图中的延迟加载(带缓存)
- 使用Twitter引导程序's Scrollspy到延迟加载(滚动加载)异步JavaScript
- Javascript客户端从ASP.NET MVC后端延迟加载模型
- 在featherlight.js中延迟加载iFrame
- 如何包含多个JS文件-延迟加载javascript
- 使用筛选延迟加载项目
- AngularJS正在等待CSS延迟加载
- 卸载/销毁角延迟加载组件
- 使用Socket IO进行Jstree延迟加载
- 如何在文本上实现延迟加载
- 延迟加载js-how
- 在 JavaScript 中延迟加载,Jquery 'ready()' 在加载 JQuery 之前运行