一、css文件在head标签中引入,保证在渲染结构的时候进行样式渲染
二、Js文件放在body的底部,确保在渲染dom树的时候不会出现js阻塞
三、函数内的变量是访问速度最快的,全局变量的访问速度是最慢的,减小全局变量的访问
四、函数中使用屡次全局变量的时候能够把全局变量赋值给一个新的局部变量
五、闭包会影响内存和性能,减小没必要要的闭包函数的使用
六、尽可能避免使用对象成员,使用的话同一个函数中避免屡次引用对象成员
七、ECMAscript和DOM是两个独立的部分,每次访问都会形成性能的损耗,因此要减小访问DOM的次数
八、选择合适的选择器能提升性能
九、减小会致使重绘和重排版的操做,将多个DOM操做改变合并到一个批次中一次性执行
十、当须要对DOM元素进行屡次修改时,1、摘除元素,2、进行修改,3、将元素放回文档,这样只会引起两次重排版
十一、减小对布局信息的查询次数,若是须要使用变量
十二、重排版的部分越小执行速度越快,大部分的重排版执行时可能出现卡顿
1三、使用事件托管的方式
1四、for-in循环比其余三种循环开销要大,非必要是不适用for-in
1五、Js在运行时会中止线程中的任务,因此js运行任务要尽快结束以避免对用户体验形成影响
1六、调查发现单个js操做运行的时间最大是100ms,不然算是运行慢的了
1七、使用定时器将长时间的js执行脚本成为较短的片断
1八、将一个运行时间较长的任务分解成多个小任务
1九、多个定时器被同时间建立会影响性能,同一时间只存在一个定时器才不会带来性能问题
20、根据项目需求选择正确的数据格式和与之对应的传输技术
2一、尽可能使用json轻量的数据形式,XML冗长且解析缓慢
2二、建立新对象和新数组的时候使用直接量比非直接量形式建立和初始化更快
2三、原生方法老是比JavaScript写的东西要快,尽可能使用原生方法
2四、合并js文件,减小HTTP请求的数量
2五、使用YUI压缩器紧凑处理js文件
2六、使用CDN提供js文件,提供性能,管理压缩和缓存
2七、使用性能分析器找出脚本运行时慢的部分,并对其进行优化css