三、页面性能优化

2017-11-27  本文已影响14人  这位网友

《指尖上行——移动前端开发进阶之路》学习笔记

第三章:介绍页面性能的优化原理,如如何进行资源优化、加载优化及脚本优化,这可以保证较快的访问速度,可以更好地增加用户体验,减少用户流失。

3.1 优化原理

3.1.1 为什么优化

降低用户浏览门槛和制作成本,为用户提供更好的用户体验。

3.1.2 优化思路
3.1.3 资源优化
3.2.1 图像
3.2.2 音频
3.2.3 视频
3.2.4 代码

3.3 加载优化

3.3.1 加载原理
3.3.2 浏览器分析
3.3.3 加载优化实战

3.4 脚本优化

3.4.1 执行效率
3.4.2 Web Worker

在HTML5中的多线程是这样一种机制,它允许在Web程序中并发执行多个脚本,成为一个线程,相互独立,并且由浏览器中的JavaScript引擎负责管理。

var worker = new Worker("worker.js");
var worker = new Worker(blob);

我们可以用以下两种写法来接收数据

Worker.onmessage = function (event) {};
Worker.addEventListener("message", target);

同时可以通过以下两种写法来发送数据

Worker.postmessage(message, taransferList);
Worker.postMessage({
    operation: "list",
    // ArrayBuffer object
    input: buffer,
    threshold: 0.8,
},[buffer]);
创建新的Worker
var worker = new Worker("worker.js");

传递参数
worker.postMessage("test");

接收消息
worker.onmessage = function (e) {
    var message = e.data;
}

异常处理
worker.onerror = function (e) {
    console.log("Error at" + e.filename + ":" + e.lineno + e.message);
}

结束Worker
worker.terminate();

载入类和工具函数
importScripts("utils/base64.js", "utils/Map.js"...)
需要注意的是,importScripts是同步的方法,一旦importScripts方法返回就可以开始使用载入的脚本,而不需要回调函数。
创建新的Worker
var worker = new SharedWorker("sharedworker.js");

传递参数
worker.port.postMessage("message");

接收消息
worker.port.onmessage = function (e) {
    var message = e.data;
}

可以参考一下:HTML5 Web Worker的使用

上一篇 下一篇

猜你喜欢

热点阅读