zoukankan      html  css  js  c++  java
  • js总结(四):关于高性能

    参考《高性能网站建设进阶指南》

    不仅仅关注页面加载时间,也要关注下页面操作时的相应速度。页面操作是我们写程序中 实实在在需要的

    1、使用局部变量

    任何非局部变量,在函数中使用次数超过一次时,就应该将其变成局部变量。

      

    var setName = function (){
        if(!$("#name").val()){
            $("#name").val("ddd");
        }
    }
    //下面应该变成一个局部变量
    var setName = function (){
    var $name=  $("#name");
        if(!$name.val()){
           $name.val("ddd");
        }
    }

    全局变量对象始终是作用域中的,最后一个;所以对全局变量的解析是最耗时的。

     2、数据存储的位置

         4种地方可以存储:字面量值、变量、数组元素、对象属性

    字面量值和局部变量中读取值的开销差异很小,可以忽略不计。主要差别是数组和对象中读取值。

       在循环,将函数中使用超过一次的对象属性或者数组元素,存储为一个局部变量

    var a = ["a","b","c"]
    for(var i =0 ;i<a.length){
       console.log( a[i])
    
    }
    //减少读取数据的长度
    var a = ["a","b","c"]
    var b =a.length;
    for(var i =0 ;i<b){
       console.log( a[i])
    
    }

       3、流控制

    流程的控制是提升性能的重要一环。条件判断,尽可能尽快结束。当仅判断一两个条件时,if语句通常比switch更快。当有2个以上条件判断且条件比较简单时(不是进行范围判断),switch语句更快。

    4、减少dom操作

    如果必须dom操作,在没显示之前,可以先隐藏再dom操作

  • 相关阅读:
    Linux之SSH详解
    Linux下的静态路由配置
    Linux之防火墙配置
    五、SQL 转换:Oracle 转 MySQL
    四、Oracle转Mysql总结
    三、MySQL 替代 Oracle 序列以及自增长处理
    二、MySQL 高级部分
    一、MySQL 基础
    15-1、常用类
    14-1、GUI
  • 原文地址:https://www.cnblogs.com/danghuijian/p/4127007.html
Copyright © 2011-2022 走看看