高效前端:js优化

1 按强类型风格写代码

  • 定义变量时指明数据类型,例如使用
    var num=0,str=''
    
    代替
    var num,str
    
    方便了js解释器,同时也方便了阅读代码的人;
  • 不要随意更改变量的数据类型
    这样不仅需要解释器进行额外的类型装换处理,还会给阅读代码的人带来疑惑。如果真的需要改变类型,可以重新定义一个变量进行处理
  • 函数返回值的类型是确定类型
    尽量做到函数的返回值的类型一致,尽量避免
    function test(){
    
    	if(...){
    		return ' '
    	}else{
    		return 1
    	}
    	
       }	
    
    否则调用函数时可能还需要进行数据类型转换处理

2 减少作用域查找

  • 尽量不要将变量暴露在全局作用域
  • 不要滥用闭包

3 尽量使用=== 来代替 ==

  • == 会产生一些异常(如null == undefined,’ '== 0等情况,当然如果有意利用这这些特性的除外);
  • 如果已经确定了数据类型,使用=== 完全可以替代 ==;
  • 如果数据类型不一致,尽量对齐进行数据类型装换;
  • 使用==在JSLint检查时无法通过;

4 合并表达式(执行效率更高)

  • 使用三目运算符表示简单的ifelse语句
  • 使用连等赋值;
  • 自增/自减

5 减少魔数

假设有这样的一段代码

testFn('seller',34,false)

从这个函数调用来说,很难看出这些三个函数参数是什么意思,如果不去查看一下函数的源码,怕是很难理解。这样的意义不明的常量就被称为 魔数
如果将代码改成这样:

var seller='seller';
var sellerNum=32;
var isSeller=false;

testFn(seller,sellerNum,isSeller)

那每个参数的意义就比较明显了

1.6 使用ES6简化代码

  • 使用class;
  • 使用模板字符串
  • 箭头函数;
  • 块级作用于;

猜你喜欢

转载自blog.csdn.net/weixin_43801564/article/details/85124811
今日推荐