http
1:Dns预解析,可以通过预解析的方式来预先获得域名所对应的 IP。 2:合理利用缓存 减少请求 3:强缓存。不易变动 协商缓存。容易变动 4:在服务端渲染后客户端请求直接渲染,弊端vue一些生命周期拿不到 5:Cdn 静态的一些文件上传到服务器 Web资源通过CDN放在地理上更靠近来访者的服务器节点上。 6:懒加载,图片视频等懒加载 7:预加载 图片的预加载
Css
1:图片icon尽量使用svg,压缩图片,控制大小
2:使用雪碧图
3:对css压缩
4:写css层级不要嵌套太深,3层
5:内容和样式分离,易于管理和维护
6:慎重使用高性能属性:浮动、定位;
7:利用CSS继承减少代码量
Js 事件代理 事件绑定在父级
减少作用域链查找 例子 低效率的写法: // 全局变量
var globalVar = 1;
function myCallback(info){
for( var i = 100000; i--;){
//每次访问 globalVar 都需要查找到作用域链最顶端,本例中需要访问 100000 次
globalVar += i;
}
}
更高效的写法: // 全局变量
var globalVar = 1;
function myCallback(info){
//局部变量缓存全局变量
var localVar = globalVar;
for( var i = 100000; i--;){
//访问局部变量是最快的
localVar += i;
}
//本例中只需要访问 2次全局变量