正文前端优化,包括css,jss,img,cookieIP云V管理员/2022-10-04/4 阅读 10/04提示:扫一扫查出行【扫一扫了解最新限行尾号】复制提示前端优化,来自某懒观看麦子学院视频的笔记。尽可能减少HTTP的请求数使用CDN添加Expirs头,或者Cache-controlGzip组件压缩文件内容将CSS放在页面上方将脚本放到页面下方减少CSS中Expressions:只在IE中使用,在css中通过js动态赋值将javaScript和CSS独立成外部文件减少DNS查询压缩javaScript和CSS避免重定向移除重复的脚本配置实体标签(ETags):客户端请求文件,服务器读取文件标签,如果未修改就直接返回304.使用AJAX缓存避免空的src href属性尽早地刷新缓冲使用get来完成ajax延迟加载:分批加载预先加载:客户端缓存js文件等减少DOM元素避免404页面高效缩写CSSbigpipe技术,分层显示,先出框架,再加载框架内的物体。使用替代@import避免使用滤镜:只在旧版IE中使用,修正图片问题CSS无图片技术:css image(css引入背景图片比较占资源,如果用css绘制类似小三角这样的简单图片,则大大减负)smush.it、转png格式压缩图片大小合并和拆分图片:合并:CSS sprites 将小图片合成大图片,再用背景定位显示图标。拆分:多线程拆分后下载。多域名下载图片IE6缓存背景图片预加载图片减小cookie的体积,移除不必要的cookie(注意在适应级别上设置cookie,以便子域名不受影响),设置cookie域静态资源使用无cookie域名设置合理的cookie过期时间优化js循环语句。将length属性抽取至判断语句之外。for(in)效率最差,for(;;)=while();js使用闭包进行缓存js不再循环中创建函数。改为抽取函数后调用js手动消除引用,告诉垃圾回收器。不推荐delete函数,推荐使用=null的方法。慎用js全局对象,因为不会被垃圾回收js绑定的事件不需要后取消绑定。推荐用on,防止多次绑定慎用js闭包,可能会导致内存泄漏js少用eval,特别是在循环内。json[i][变量]=1这样的语句不要使用eval使用json格式初始化js的对象和数组。而不是new一个。前者引擎直接解释,后者调用构造器。js使用Math.floor(),“”+的方示进行类型转换。Math是内部对象js使用正则处理字符串比js循环要快,但构建正则对象比较耗时,尽量抽取后复用。存储时使用对象还是数组。键值对中值多样,使用对象。其他使用数组数组中对象尽量一致缓存ajax.函数缓存。h5中的sessionStorage(会话级)和localStorage(持久化)bool值的判定,通过率越小越往前。工具yslow、pagespeed