块级作用域
- 支持的情况下尽量用let代替var
- 支持的情况下常量尽量用const
字符串
- 静态字符串尽量使用单引号或反引号
结构赋值
- 优先使用结构赋值的场景
- 使用数组赋值
- 如果函数的参数是对象的成员
对象
- 单行定义的对象,最后一个成员不以逗号结尾。多行定义的对象,最后一个成员以逗号结尾
数组
- 使用扩展运算符拷贝数组
- 使用Array.from方法将like Array转换为数组
Map结构
- 如果是描述key,value的集合,请使用map结构
- 如果是描述一个对象的特性,请使用object
Class
- 支持的情况下,尽量class取代prototype
- 继承同样
模块
- 如果模块只有一个输出值,就使用export default,如果模块有多个输出值,就不使用export default,不要export default与普通的export同时使用
- 不要在模块输入中使用通配符,因为这样可以确保你的模块之中,有一个默认输出
- 如果模块默认输出一个函数,函数名的首字母应该是小写
- 如果模块默认输出一个对象,对象名的首字母应该是大写