Skip to content

eslint-core

必须在数组方法的回调中使用return语句

禁止使用花括号和return

箭头函数参数必须使用括号包裹

箭头函数的箭头前后必须有空格

禁止使用其他块级作用域的var变量

推荐类方法使用this

函数必须有统一的返回值

构造函数必须调用super()

推荐使用花括号包裹代码块

推荐在switch语句中将default子句放在最后

推荐在switch语句中使用default分支

推荐将默认参数放在参数列表的最后

必须在点操作符前换行

推荐使用点表示法访问对象属性

推荐使用严格等于和严格不等于操作符

禁止for循环中的计数器错误方向

生成器函数的星号前必须有空格,后面不能有空格

必须在getter方法中返回值

推荐在模块顶层调用require

推荐将同一属性的getter和setter函数定义在一起

推荐在for-in循环中使用守卫语句

每个文件中只能有一个类

禁止使用alert, confirm, 和 prompt函数

禁止在Promise的executor函数中使用async函数

禁止在循环中使用await

禁止使用Buffer构造函数

禁止使用arguments.caller和arguments.callee

禁止在case/default子句中使用声明变量

禁止修改类声明的变量

禁止与-0进行比较

禁止在条件语句中使用赋值操作符

禁止使用可能与比较运算符混淆的箭头函数

禁止修改const声明的变量

禁止在条件中使用常量表达式

禁止在构造函数中返回值

禁止在正则表达式中使用控制字符

禁止使用debugger

禁止删除变量

禁止函数参数重复

禁止在类成员中使用重复的名称

禁止在同一个if-else-if链中出现重复的条件

禁止对象字面量中的重复键

禁止重复的case表达式

禁止在包含 return 语句的 if 块后出现 else 块

禁止在正则表达式中使用空字符类

禁止空函数

禁止使用空的解构模式

禁止空的代码块

禁止使用eval函数

禁止在catch语句中重新赋值异常参数

禁止扩展原生对象

禁止不必要的函数绑定

禁止不必要的布尔类型转换

禁止使用标签

禁止不必要的分号

禁止case语句落空

禁止省略浮点数中的0

禁止重写函数声明

禁止对全局变量赋值

为什么?

禁止修改导入的绑定

禁止在块级作用域中出现函数声明

禁止在 RegExp 构造函数中出现无效的正则表达式字符串

禁止使用不规则的空白字符

禁止使用iterator

禁止标签与变量同名

禁止使用标签语句

禁止无用的代码块

禁止在循环中创建函数

禁止使用在运行时会丢失精度的数字字面量

禁止误导的字符类

禁止使用多个空格

禁止使用多行字符串

禁止使用new Function

禁止使用new require

禁止使用new操作符调用Symbol

禁止使用原始包装类型

禁止使用new创建对象后不赋值

禁止在字符串字面量中使用转义序列

禁止将全局对象作为函数调用

为什么?

禁止使用八进制字面量

禁止对函数参数进行重新赋值

禁止在Node.js中使用字符串拼接路径

禁止在Promise执行器函数中返回值

禁止使用__proto__属性

禁止直接调用Object.prototype的方法

禁止重复声明变量

禁止在正则表达式中使用多个空格

禁止导出指定的名称

禁止使用特定的全局变量

禁止使用特定的对象属性

禁止在return语句中使用赋值语句

禁止在URL中执行js代码

禁止自我赋值

禁止自我比较

禁止使用逗号操作符

禁止setter函数返回值

禁止覆盖JavaScript中的特殊变量名

禁止变量名重复

禁止使用稀疏数组

禁止在普通字符串中使用模板字符串的占位符

禁止在super()之前使用this/super

禁止抛出字面量错误

禁止初始化变量为undefined

禁止使用未声明的变量

禁止出现容易引起误解的多行表达式

禁止出现只能循环一次的循环

禁止出现无法执行的代码

禁止在finally代码块中使用流程控制语句

禁止对关系运算符的左操作数进行取反操作

禁止在可能导致运行时错误的位置使用可选链

禁止无效表达式

禁止使用未被引用的标签

禁止未使用的变量

禁止在定义之前使用变量或函数

禁止无效的正则表达式反向引用

禁止无用的catch

禁止无用的计算属性键

禁止无用的字符串拼接

禁止无用的构造函数

禁止无用的转义

禁止无用的重命名

禁止无用的返回

禁止使用var

禁止使用void操作符

禁止使用with语句

推荐使用对象字面量简写语法

推荐使用箭头函数作为回调

推荐使用const声明不会被重新赋值的变量

推荐使用解构

推荐使用数字字面量

推荐Promise的reject方法中只抛出Error对象

推荐使用正则表达式字面量

推荐使用剩余参数

推荐使用扩展运算符

推荐使用模板字面量

必须在parseInt()函数中提供基数参数

必须在生成器函数中使用yield关键字

禁止在扩展运算符和它们的表达式之间添加空格

必须使用严格模式

创建Symbol时必须添加描述

模板字符串中的大括号内不能有空格

禁止与NaN进行比较

必须使用正确的typeof比较

必须将变量声明放在作用域顶部

必须将立即调用的函数表达式包裹在括号中

yield*表达式中*的后面必须有空格

禁止Yoda条件