ESLint 通过配置 rules 实现 JavaScript 代码检查,支持 off/warn/error 三级 severity;需安装、初始化配置文件、运行检查并集成编辑器插件;规则分错误预防、代码风格、ES6+ 规范、可读性四类,可继承 eslint:recommended 等配置并按需覆盖或禁用。

JavaScript 代码检查主要靠 ESLint 实现,它能提前发现潜在错误、风格不一致和不良实践。核心是配置规则(rules),规则可设为 “off”(禁用)、“warn”(警告)或 “error”(报错中断构建)。
如何启用 ESLint 检查
安装并初始化后,在项目根目录创建 .eslintrc.js 或 .eslintrc.json 配置文件 ,通过 rules 字段开启具体规则:
- 全局安装:
npm install -g eslint;本地推荐:npm install eslint --save-dev - 初始化配置:
npx eslint --init(按向导选择环境、框架、风格等) - 运行检查:
npx eslint src/或配合脚本写入package.json:"lint": "eslint src/" - 编辑器中装 ESLint 插件(如 VS Code 的 ESLint 扩展),可实时标出问题
ESLint 常用规则分类与示例
规则按作用大致分四类,以下为高频实用项(基于 eslint:recommended 和社区常用实践):
- 错误预防类 :
"no-unused-vars": "error"—— 报错未使用的变量或参数"no-undef": "error"—— 禁止使用未声明的变量"no-redeclare": "error"—— 禁止重复声明变量 - 代码风格类 :
"indent": ["error", 2]—— 强制 2 空格缩进"quotes": ["error", "single"]—— 必须用单引号"semi": ["error", "always"]—— 必须加分号 - ES6+ 语法规范类 :
"no-var": "error"—— 禁用var,强制用const/let"prefer-const": "warn"—— 推荐用const替代let(若未重新赋值)"arrow-spacing": "error"—— 箭头函数前后保留空格 - 可读性与维护性类 :
"max-len": ["warn", { "code": 100}]—— 单行不超过 100 字符"no-console": "warn"—— 开发时允许,上线前建议禁用(可配{"allow": ["warn", "error"]})"complexity": ["warn", { "max": 10}]—— 圈复杂度超 10 发出警告
如何自定义或扩展规则
不必从零写规则,可继承成熟配置再微调:
立即学习 “Java 免费学习笔记(深入)”;
- 扩展官方推荐:
"extends": "eslint:recommended" - 搭配主流风格(如 Airbnb、Standard):
"extends": "airbnb-base"(需额外安装对应包) - 覆盖某条规则:在
rules中重新声明,优先级高于extends - 对特定文件禁用规则:用注释控制,如
// eslint-disable-next-line no-alert或/* eslint-disable no-unused-vars */
基本上就这些。规则不是越多越好,关键是团队共识 + 持续执行。初期可先开核心错误类规则,再逐步加入风格约束,避免一次性报错太多影响开发节奏。
以上就是