看网易云公开课代码性能开发有感,怎样提高代码的性能

看到网易云讲到写一个缓存机制,什么时候用缓存机制,当有大量重复计算的时候,计算的难度不是很简单,如果是很简单的计算不要用缓存机制,不然会浪费大量的性能

在取HTMLCollection对象时,通常循环时直接这样写

for (var i = 0; i < myarray.length; i++) {

}
但是 集合的麻烦在于它们实时查询基本文档(HTML页面)。这意味着每次你访问任何集合的长度,你要实时查询DOM,而DOM操作一般都是比较昂贵的。所以我们可以用缓存的机制来减小性能的开销、
 max = myarray.length 只用获取一次

就是在写的过程中,要遵循单一变量原则,这样代码易维护

 


代码的规范

1 可读性
  命名 
    常量命名全部大写,可以用_分开
    函数命名大驼峰
    临时变量命名下划线开头,全部小写
    属性方法命名用小驼峰
  注释 
  格式
    缩进跟换行 
    当传递一堆属性时,可以进行适当的换行
2 性能层面优化
    能不用全局对象就尽量别用,用了要注意释放(arr=undefined 或arr=null) 
    不要频繁从对象取属性,可以适当缓存
    尽量减少循环里面的计算(就是当arr.length 取长度时,可以把这个长度缓存下来,而不是 i<arr.length)
    读取变量尽量从最近的作用域读取
      (function(window){ })(); 
      为什么要传window,不用传函数里面也能读到,传了是因为能够减少找变量的消耗
      算法与缓存 
3.架构层面
    保持高内聚低
    代码可维护性跟扩展性
      JQ很好的扩展性跟模块互相独立

 

以后发现不断补充

posted @ 2019-06-25 22:31  Dainney  阅读(191)  评论(0编辑  收藏  举报