欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JS编程风格规范

程序员文章站 2022-03-31 10:05:57
...

JS编程规范

资料来源:ES6教程【编程风格】

变量

  1. 变量的声明中var和let优先使用let,let和const中优先使用const

字符串

  1. 普通字符串(静态字符串)使用单引号或者双引号,含有变量的字符串(动态字符串)使用反引号

解构赋值

  1. 使用数组成员对变量赋值,优先使用解构赋值
  2. 函数的参数如果是对象的成员,优先使用解构赋值

对象

  1. 单行定义的对象,最后一个成员不以逗号结尾,多行定义的对象,最后一个成员以逗号结尾
const a = { k1: v1, k2: v2 };
const b = {
  k1: v1,
  k2: v2,
};
  1. 对象的属性和方法,尽量采用简洁表达式,这样易于描述和书写
var ref = 'some value';

// bad
const atom = {
  ref: ref,

  value: 1,

  addValue: function (value) {
    return atom.value + value;
  },
};

// good
const atom = {
  ref,

  value: 1,

  addValue(value) {
    return atom.value + value;
  },
};
  1. 模拟现实世界的实体对象用Object,只有在需要key:value的数据结构时使用Map,因为Map有自己的迭代器

数组

  1. 使用扩展运算符拷贝数组
  2. 使用Array.from( )方法将类数组转成数组
//字符串反转
let str = 'hello'
let arr = Array.from(str)//将字符串直接转成数组
console.log(arr.reverse().join(''))

函数

  1. 立即执行函数可以写成箭头函数的形式
  2. 简单的、单行的、不会复用的函数,建议采用箭头函数,如果函数体较为复杂,行数较多,还是采用传统的函数写法

class

  1. 总是用class取代需要prototype的操作,因为class的写法更简洁,更易于理解
  2. 使用extends实现继承,因为这样更简单,不会破坏instanceof运算

模块

  1. ES6模块语法是JS模块的标准写法,坚持使用这种写法,取代NodeJS的CommonJS
    语法:首先使用export取代module.exports,其次使用import取代require,再次,如果模块只有一个输出位置,就使用export default,如果模块有多个输出值且都是平级关系,不要同时使用export 和export default
  2. 如果模块默认输出一个函数,函数首字母应该小写,表示这是一个工具方法
  3. 如果默认输出是一个对象,对象名的首字母应该大写,表示这是一个配置对象