代码习惯

155 阅读1分钟

一、代码习惯:

1、取值:数组替代if...else...

2、挑选:filter替代for循环

3、找值:find替代for循环

4、判断是否存在:includes替代for循环

5、返回值变量命名:小函数中以result命名,不要直接return返回值,当值不存在是应该直接return,避免阅读成本

6、保持对象的完成性,函数传参时先传对象,再从对象结构

7、巧用运算符:判断值是否为null和undefine时,用??代替

8、把表达式换成一个变量来表示

9、console.log({name})取代console.log('name', name)

10、配置表取代硬编码

11、巧用JS隐式类型转换

  • 快速转换Number类型:
// 字符串转数字代码对比 
const price = parseInt('32');//传统方式 
const price = Number('32'); //传统方式 
const price = +'32'; //新方式 
// 日期转换为时间戳代码对比 
const timeStamp = new Date().getTime(); //传统方式
const timeStamp = +new Date(); //新方式 
//布尔转数字新方式 
console.log(+true); // Return: 1 
console.log(+false); // Return: 0
  • 快速转换Boolean类型:
// 各种类型转布尔代码对比
const isTrue = Boolean('') //传统方式
const isTrue = !!'' //新方式 
const isTrue = Boolean(0) //传统方式 
const isTrue = !!0 //新方式 
const isTrue = Boolean(null) //传统方式 
const isTrue = !!null //新方式 
const isTrue = Boolean(undefined) //传统方式 
const isTrue = !!undefined //新方式
  • 快速转换String类型:
// 数字转string代码对比 
const num = 1; 
const str = num.toString(); //传统方式 
const str = num + ''; //新方式

二、复盘:整理代码

三、封装js模块代替第三方库

四、修改bug时不要只顾眼前

五、不要怕错

六、将一个功能按照不同模块划分开来

七、减少注释,代码语义化,可以使用通用的名字来代表参数命名