airbnb入门(二)

Destructing

主要是针对函数和解构而言的要求

对象解构

  1. 当函数中使用传入对象的多个属性时,那么使用对象解构承接传入对象。报错类型,requireObjectDestructing

数组解构

  1. 使用以下方式,否则,报错,requireArrayDestructing
const [first,second] = arr1;

返回多个值,使用对象解构

  1. 使用数组解构会报错,disableArrayDestructingReturn
function fn(){
  // bad 
  return [first,second,third];
  // good , 好处, 可以挑选对象部分属性使用
  return {first,second,third};
}
const {first,third} = fn();

String

  1. 字符串使用单引号。报错,quetos
  2. 字符个数少于100,不要换行。
  3. 使用模板字符链接字符串,不使用+链接,模板字符变量引用开始时没有空格。
  • prefer-template
  • template-curly-spacing
  1. 不使用eval()
  2. 必要的时候,才使用转义字符。报错,no-unless-escape

Functions

  1. 函数表达式,后边的匿名函数改为命名函数。报错,func-style
  2. 匿名函数自调用需要外层有括号。报错,wrap-iife
// good
(function () {}())
  1. 块级域中(if , while),不要直接定义函数,改为块级外部声明,内部使用。报错,no-loop-func
  2. 如果必须定义函数,使用箭头函数。
  3. 函数参数不能是arguments
  4. 不使用arguments,使用对象解构对实参进行获取。报错,prefer-rest-params
function fn(...args) {
}
  1. 使用参数默认值的方式,应对传入参数不合适情况,不再使用逻辑语句。逻辑语句缺点如下:
  • 逻辑语句a = a || 0
  • 当a传进来为undefined或者null或者NaN时,错误也有错误的用法,而不是直接就修改
function fn(a = 0) {
}
  1. 注意默认值的副作用,当传入参数值时,默认值语句就不会执行,可能会造成一些错误。
  2. 有默认值的参数,尽量往后放。
  3. 不使用Function构造函数创建函数。报错,no-new-func
  4. 关于函数的空格。报错类型
  • space-before-function-paren
  • space-before-block
//注意空格位置
function fn() {}
  1. 不改变参数,赋值给变量之后再改变。报错,no-ressign-param
  2. 使用数组解构代替apply拆分数组的功能。报错,prefer-spread
  3. 形参或着实参分行显示,注意一下要求
  • 每一个变量一行
  • 第一个和最后一个也不和括号在一起
  • 参数最后一个加一个逗号
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容