代码规范
代码规范作用:消除冗余 规范清晰
简洁
格式化
去除打印信息
调试信息
注释:
原注释:
// step1:第一行
xxx1
// step2:第二行
xxx2
// step3:第三行
xxx3
规范后注释(空格间距一样,步骤完整):
/**
* step1:第一行
* step2:第二行
* step2:第二行
*/
// step1
xxx1
// step2
xxx2
// step3
xxx3
打印信息:
let xxx1='1'
//发布前去掉 todo remove
console.dir(xxx1)
let const使用
let声明的是变量
const声明的是常量,只读,修改值会报错
const保存的是内存地址,可以给对象或数组添加属性或元素,但是不能重新复写
赋值
c语言中
a=10 常量赋值给变量为true
10=a 变量不能赋值给常量为false
if(a=10) //true 答案为false
if(10=a) //false 答案为false
所以规范为 常量 === 变量
例子:
if(flag==5) 当少写一个=,变成flag=5,会变成死循环,编译器不会报错。
if(5==flag) 此时若少写一个=,变成5=flag,编译器会报错。
例子来源链接找不到了,可联系添加链接
封装
封装公共函数、公共工具封装了 值非空非undefined
const isNullOrUndefined = (value) => {
return null === value || undefined === value;
};
命名规范
1、命名不用太精细,可以广泛些,可以被复用
2、不要重复定义词义相近的词
3、不是所有常量都需要抽离,只将公用的抽离出来,方便复用
命名规则:
on+动词
onClick
onChange
handle+名词+动词 (input,search等组件)
handleXxxClick
handleXXXChange
is+名词+动词
Boolean isXXX
函数命名(非handle) 动词+名词 (createNewGoods->createGoods)
变量:定义常量 变量语义化 (goodName 商品名)
常用标签
div a span img
错误排查法
对比法:找差别
二分法:删除部分代码
直觉法
找规律:通过线索找规律 (看日志)
结合推理、假设、验证