JavaScript代码规范是团队约定的非语法强制性写作习惯,ESLint通过AST静态分析、错误分级、保存即修复和提交前拦截统一风格,而Prettier仅负责排版,ESLint还覆盖语义检查与逻辑风险识别。
JavaScript中的代码规范是一套关于如何写代码的约定,涵盖缩进、分号、引号、命名、空格、括号位置、变量声明方式等细节。它不是语法强制要求,而是团队为提升可读性、可维护性和协作效率共同遵守的“写作习惯”。比如:用const优先代替var、字符串统一用单引号、if后必须有空格、函数参数间加逗号空格等。
ESLint不是靠说服或文档,而是通过静态分析把规范变成可执行的规则:
indent检查缩进、quotes检查引号类型),不依赖运行时,编辑器里就能实时提示off(关闭)、warn(警告)、error(报错中断),团队可根据严格程度灵活控制lint-staged和husky,在git commit前自动跑检查,不合规范的代码根本进不了仓库Prettier专注“怎么排版好看”,比如换行、缩进、括号位置;但它不管代码有没有潜在问题。ESLint则能发现更深层的问题:
console.log残留、debugger语句、eval调用等===而非==、禁止修改function参数、推荐解构赋值等真正让规范跑起来的不是配置文件本身,而是工具
链嵌入开发流程的方式:
pre-commit钩子调用npx eslint --fix,失败则拒绝提交npm run lint,不通过则阻断集成.eslintrc.js和package.json脚本,开箱即用