监控js传输
1 .1MB的js在不同的设备上需要的解析时间是不同的。分析解析和编译时间,对于理解应用程序什么时候做好交互准备至关重要,这些时间因用户的设备的硬件能力而异,高端的设备解析和编译的时间很容易在低端手机上高出2-5倍
2 .实施代码分割:如果有可能,只提供用户需要的资源。webpack.
3 .页面通用功能(焦点图,图片滚动,文字滚动),使用静态域名下全站统一的js文件
4 .任何js功能要求都可以做到延迟加载,避免阻塞页面
5 .超过10k的js代码使用外联文件
6 .不要再首页,频道首页,底层页引用体积庞大的外部文件
7 .公共产品听过的接口js代码应该注意封装好自己的命名空间
8 .公共平台使用规范:页面服务器只存放文本文件,不存放图片等媒体文件。素材服务器上存放素材文件:包括素材图片,css文件,JS文件,mp3,flash文件。图片服务器集群主要存放内容图片。
9 .开发智能事件处理程序:就是事件代理啊.叫的倒是停高端的
10 .通过js预加载图片:在空闲的时候,通过js创建一个不在视野内的图片标签,使浏览器去加载相应的图片并缓存起来
11 .代码执行优化
dom操作优化
算法优化
1 .避免使用for in循环,除非遍历数量未知的对象。因为他会同时遍历原型属性
2 .循环中减少循环次数以及每次循环的运算步骤
3 .if -else:条件数较少的时候用这个,switch:条件多的时候使用
4 .尽量使用循环替代递归,浏览器一般都有最大递归次数限制
5 .使用更好的数据结构
6 .控制原型链的深度,减少对象的嵌套
7 .